1.什么是继承?
使一个类拥有另一个类全部公开的属性与行为的一种机制。
2.继承的目的
假如一个类拥有另一个类的全部行为与属性,并且这些属性与行为数量较大,同时为其他类所共享,可以将这个类定义为子类去继承另一个类,实现代码复用。
3.继承的影响
子类拥有了父类中非private的方法与属性。
4.继承的限制
- 构造方法:任何一个类中都有一个默认的无参构造方法,一旦显式地创建了有参构造方法,默认的无参构造方法就被清除。子类的无参与有参构造方法中默认调用父类的无参构造方法,如果父类中不存在无参构造方法,编译无法通过。补充:抽象类中有构造方法,接口中没有构造方法。先初始化成员变量,后调用构造方法。
- 单继承:在java中一个类只能通过extends关键字继承一个父类。
- 方法重写:参考http://www.cnblogs.com/tonghun/p/7141790.html。
- 耦合度:子类继承了父类,子类对父类存在较大的依赖,父类发生变化时对子类的影响较大。
5.使用条件
因为一个类只有一次继承机会,而且继承会增加耦合度,出于维护继承机会与降低耦合度的考虑,只有在一个类与另一个类相同的方法较多时,才考虑使用继承,否则可以考虑实现接口,或者采用设计模式,如装饰者模式。
6.接口继承
一个接口可以继承多个接口,这样就拥有其他接口的抽象方法,自身不需要实现这些继承的抽象方法。
时间: 2024-11-05 21:44:25