1:类的复用有三种形式 1组合——>即把对象的引用置于新类中
初始化引用的4中方式 1定义对象时初始化(那么其在构造函数调用前已经被初始化)。
2在类的构造体中初始化
3实例初始化
4就是在使用对象前完成初始化——惰性初始化
2继承 ——>按照现有类的类型创造新类。采用现有类的形式并在其中添加新代码。
1创建一个新类, 除非已明确指出从其他类中继承,否则就是在隐式地从 java的标准根类Object进行继承
2关于继承的构造函数的问题,首先构造函数的不能被继承的。从语法上来说,构造函数要与类名同名,若
子类继承父类的构造函数那么语法就出错了。
我们在创建子类对象的时候会自动调用父类的构造函数,注意这里的(调用)不是(继承)调用有两种方
式(继承)和(组合)。
3 其次子类/父类的构造函数的关系——>即若子类无现式(super())调用父类的有参构造函数,那么必调用父类的无参构造函数。
4方法重写的问题 1重写方法必须和被重写方法具有相同的参数列表,返回类型必须和被重写方法的返回类型相同或者是返回类型的子类型
2重写方法的访问控制修饰符不能比被重写方法更严格(比如一个在父类中声明为public的方法重写成一个protected的方法)
3重写方法不能抛出新的检查异常,或者是抛出比被重写方法声明的检查异常更广泛的检查异常
4只有实例方法才能被重写,超类中的final方法不能被重写
3代理——java 没有对其提供明确的支持,所以不再阐述。