java子类能继承父类属性吗?

Python09

java子类能继承父类属性吗?,第1张

子类继承父类的所有(包括私有属性),但是却不能调用父类的私有属性,父类私有的属性方法等子类都不能调用,所以子类里用的getName()在父类里是public的。这是java的一个特性,叫封装

这样可以么?

子类可以获得除private权限以外的所有父类属性,但是:

1、在子类继承父类的时候,子类必须调用父类的构造函数

2、如果父类有默认构造函数,子类实例化时自动调用,但如果父类没有默认构造函数,即无形参构造函数,子类构造函数必须通过super调用父类的构造函数。

3、还有在java的继承当中子类是不可以继承父类的构造函数只能调用,这是肯定的。

扩展资料:

1、子类拥有父类得特征,而父类没有,父类更通用,子类更具体,(特征包括属性和方法,自身的特性,拥有父类没有的)。

2、使用extends继承父类,语句格式:class 子类名 extends 父类名。

3、父类中一般只定义一般属性和方法(这个一般可以理解为是子类共有的,这就是父类更通用,而子类拥有其他的,所以子类更具体)。

4、子类中通过super关键字来调用父构造方法。

5、在子类中可以继承父类得那些东西,哪些不可以继承父类中public,protected修饰的属性,方法可以继承,private修饰的属性和方法不能被继承。

6、规则: 创建子类对象的时候,首先调用的是父类的无参构造方法创建一个父类对象

7、可以在子类中显示调用父类的有参构造方法。

8、如果父类的属性均为private修饰,则可以通过共有的getter,setter方法来调用。

有些编程语言支持多重继承,即一个子类别可以同时有多个父类别,比如C++编程语言;而在有些编程语言中,一个子类别只能继承自一个父类别,比如Java编程语言,这时可以利用接口来实现与多重继承相似的效果。

现今面向对象程式设计技巧中,继承并非以继承类别的“行为”为主,而是继承类别的“型态”,使得元件的型态一致。另外在设计模式中提到一个守则,“多用合成,少用继承”,此守则也是用来处理继承无法在执行期动态扩充行为的遗憾。

参考资料来源:百度百科-继承