第六章
1.this指向当前对象;形参与成员名字重名,用 this 来区分;引用构造函数
2.先通过super调用父类的构造函数,再调用自己的构造函数
3.类的域变量在类实例化的时候进行初始化,方法中的局部变量在方法内部显式初始化
5.实现多重继承;扩展性强
6.共同点:都有抽象方法,不能实例化,都有自己的声明
不同点:属性 接口只有静态常量
抽象类可以有集体方法,接口只有抽象方法
抽象类必须有子类继承并实现,接口必须有实现类实现
7.equals()
“==”
instanceof
8.(1)
内部类可以访问类的所有成员,外部类无法访问内部类。保证对其他类封装,只对一个类(内部类)开发,内部类能间接实现多重继承
(2)
只用到类的一个实例
类在定义后马上用到
类非常小(4行代码以下)
9.D
10. 数据隐藏:只提供public方法来访问类中的私有属性。
当父类调用该方法时,也调用了子类覆盖的方法而不是原方法。
11.前四行正确。
第七章
1.不对。 异常分两类,runtime异常和非runtime异常。runtime异常,比如NullPointException等,这一类你不在程序里面进行try/catch,编译不会出错。
非runtime异常,比如SqlException等或自定义的exception,这一类在程序里不进行try/catch或throws,编译就会出错。
3.调用 null 对象的实例方法。
访问或修改 null 对象的字段。
将 null 作为一个数组,获得其长度。
4.输出:exception000 exception111 finished
去黑体输出:exception111 exception finished‘
去斜体输出:exception000 finished
5.13423
8.throws TimedOutException
第八章
3.一旦赋值,便不能更改其指向的字符对象,如果更改,则会指向一个新的字符对象
不能为null
4.stringA.equals(stringB);进行值比较
stringA==stringB;进行引用比较
5.String类指向的字符对象不会更改,而StringBuffer会。
通过调用函数相互转换,如:
String a = “hello”;
StringBuffer b = new StringBuffer(a); (转换成StringBuffer)
String a = new String(sb);(转换成String)