Java教程

java 继承相关知识点

本文主要是介绍java 继承相关知识点,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Q:子类能否继承父类的构造器?
A:子类不能继承父类的构造器,因为子类有自己的构造器。

Q:子类能否继承父类的私有成员(私有成员变量,私有成员方法)?
A:值得注意的是子类可以继承父类的私有成员(成员变量,方法),只是子类无法直接访问而已,可以通过getter/setter方法访问父类的private成员变量。也可以暴力去访问(可以通过反射调用)继承自父类的私有成员。

Q:子类能否继承父类的静态成员(静态成员变量,静态成员方法)?
A:子类是不能继承父类的静态成员的,子类只是可以访问(调用)父类的静态成员,父类的静态成员只有一份可以被子类共享访问。共享并非继承。

Q:子类可以继承多个父类吗?
A:java 是不允许使用 extends 去继承多个类的。java 如果出现多继承、父类中都有相同的属性和方法,子类如果使用父类的属性,无法确定是哪一个父类的属性。父类中如果有相同的方法,并且子类并没有覆盖该方法。子类调用父类的时候 无法判断是那个父类的方法。而java中接口是可以多继承的。接口(jdk 1.8 以下版本)里面的方法没有具体实现,即使在多继承时出现父类中都有相同方法的情况也并无大碍。而且接口的成员变量都是 static final的,有自己静态域,只能供自己使用。

补充:jdk1.8开始之后,接口中可以有静态方法,多继承时接口中存在同名的静态方法并不会冲突,原因是只能通过各自接口名访问静态方法。

这篇关于java 继承相关知识点的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!