1、子类并不是父类的一个子集,子类比父类包含更多的信息和方法。
2、父类中的私有属性在该类之外是不可访问的,不能在子类中直接访问;如果父类中定义了公共的setter/getter,那么可以通过这些公共的setter/getter来修改和访问它们。
3、java不允许多重继承,一个java类只能直接继承来自一个父类,多重继承通过接口来实现。
4、继承是用来为is-a关系建模的,一个父类和一个子类之间必须存在“是一种(is-a)”关系。
5、不是所有的is-a关系都该用继承来建模,例如:正方形是一种矩形,但是不应该定义一个Square类来扩展Retangle类,因为width和height属性并不适合正方形。