组合
显式的给当前对象内置一个子对象
继承语法
何为继承
Java的继承
Class A extends Class B
继承的特性,复用父类的方法,子类里定义新特性
子类初始化过程—父类是子类的一个子对象,只不过这个过程是隐式的,构造器概念引入:默认构造器和带参数的构造器
代理
其实就是一种组合,目的是为了在导出类对象中可控的使用成员对象类,继承的话,父类的所有方法在导出类子类中都可使用,不可控,或许你只想使用父类的部分方法集。
spaceship和spacecontrol的继承与代理(组合)
组合和继承之间的选择
代码示例:car包含了engine、wheel及doors
组合 has-a关系
继承 is-a关系