第四章
1,Java总是采用按值调用,方法得到的是所有参数值的一个拷贝,不能修改传递给它的任何参数变量的内容。一个方法不能修改一个基本数据类型的参数(即数值型或布尔型一个方法可以改变一个对象参数的状态。一个方法不能让对象参数引用一个新的对象。
2,如果类中提供了至少一个构造器,但是没有提供无参数的构造器,则在构造对象时如果没有提供参数就会被视为不合法。
3,如果构造器的第一个语句形如 this(...),这个构造器将调用同一个类的另一个构造器,这样可以使公共代码只写一次。但是c ++中不能这样做,c ++只能将公共代码抽出来单独成为一个方法。
4、初始化数据域的方法有三种:声明时赋值;构造器中赋值;初始化块。
5,从编译器的角度看,嵌套的包没有任何关系,每一个都拥有独立的类集合。
第五章
6,extends构造继承类,所有的继承都是公有继承。
7、如果子类的构造器没有显式地调用超类的构造器, 则将自动地调用超类默认(没有参数 ) 的构造器。 如果超类没有不带参数的构造器, 并且在子类的构造器中又没有显式地调用超类的其他构造器,则 Java 编译器将报告错误。
8、一个对象变量(例如, 变量 e ) 可以指示多种实际类型的现象被称为多态( polymorphism)。 在运行时能够自动地选择调用哪个方法的现象称为动态绑定( dynamic binding)。