1.面向对象的特征是哪些方面
- 封装
- 继承
- 多态
2. int和 Integer 有什么区别
- i nt是基础数据类型
- Integer是int的包装类
3.Math.round(11.5)等于多少?Math.round(-11.5)等于多少?
- Math.round(11.5) = 12
- Math.round(-11.5) = 11
4.编程题:用最有效率的方法计算出2乘以8等于几?
- 2<<3 相当于2的3次方
5.数组有没有 length ()方法? String 有没有length()方法?
- 数组有length属性,没有length()方法
- String有length()方法
6. 构造器 ( Constructor )是否可以被重写(Override)?
- 构造器( 构造方法 )Constructor 不能被继承,因此不能重写 Override ,但可以被重载 Overload (不同参数即可)。
- 子类不会覆盖父类的构造函数,但是在创建子类对象的时候,会自动调用父类构造函数。
7.是否可以继承String对象?
- String 类 是 final 类,不可以被继承
- String类源码定义:public final class String implements Java .io.Serializable, Comparable, CharSequence
8.当一个对象被当作参数传递到一个方法后,此方法可以改变这个对象的发生,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
- 还是值引用,只是Java中值传递的是对象的地址,传递后该对象的地址作为值被拷贝后,指向的对象地址是相同的,因此该对象的属性可以被修改。
9.String和 StringBuffer 的区别?
- String对象建立后,值就不可变了。StringBuffer对象中的值,是可以进行变化的。
10.重载(Overload)和重写(Override)的区别,重载的方法能否根据返回类型进行区分?
- 重载 定义:在一个类中,我们可以定义多个方法。如果有一些列方法,他们功能都是类似的,只有参数有所不同,JavaOOP的语法允许把这一组方法定义为同名方法
- 在继承关系中,子类如果定义了一个与父类方法签名完全相同的方法,被称为重写(Override).