在Lab2中,我体会到了继承的简便:主要是利用一个抽象类,将共同的特点在父类中进行实现,然后再在子类中对每个子类独有的特点进行实现,抽象类的方法则可以在子类中进行重写或者具体的实现。
但是在今天的课堂上,我们讲了另外一种:委派,将一个类的功能交给另一个类具体实现,委派比继承更可靠:因为委派更灵活多变,可以借用一个类的部分功能,而继承则对子类要求极高:它必须继承父类的方法,这意味着可能访问子类的非法地区,进行非法操作常用的方法是:先将两个父类之间进行委派,然后将二者的子类进行委派。
委派通过在对象层次上的,通过在委派对象传入一个被委派的对象,这个过程可以在构造器阶段,就将其传入,也可以在调用函数时传入参数(更推荐,因为更灵活,且不会固定成员变量)