java之继承
措辞
- 类Y是继承类X == 类X是类Y的父类 == Y IS-A X
- IS-A测试具有传递性,即:若Y IS-A X,且Z IS-A Y,则Z IS-A X
- IS-A关系是单向的
条件
为了防止继承被滥用,有如下使用条件:
- 当某个类会比其父类更具有特定意义时使用继承。例:短尾猫 IS-A 猫
- 在行为程序应该被多个相同基本类型类所共享时,应该要考虑使用继承。例:方形、圆形、三角形 IS-A 具有旋转、发声的类
- 若两者间的关系对于继承结构来说并不合理,则不要只是因为打算要重用其他类的程序代码而运用继承。
- 如果两者间不能通过IS-A测试,就不要应用继承。