子类将继承父类所有的方法和属性吗?为什么?

如题所述

子类继承父类的所有的非私有的方法和属性。当父类的方法或属性被声明为private(私有的)时,子类是不可以继承的。

继承可以使得子类别具有父类别的各种属性和方法,而不需要再次编写相同的代码。在令子类别继承父类别的同时,可以重新定义某些属性,并重写某些方法,即覆盖父类别的原有属性和方法,使其获得与父类别不同的功能。

另外,为子类别追加新的属性和方法也是常见的做法。 一般静态的面向对象编程语言,继承属于静态的,意即在子类别的行为在编译期就已经决定,无法在执行期扩充。

扩展资料:

子类继承父类的注意事项:

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

2、使用extends继承父类,语句格式:class 子类名 extends 父类名{}。父类中一般只定义一般属性和方法,可以理解为是子类共有的。

3、子类中通过super关键字来调用父构造方法。规则: 创建子类对象的时候,首先调用的是父类的无参构造方法创建一个父类对象。

4、可以在子类中显示调用父类的有参构造方法。如果父类的属性均为private修饰,则可以通过共有的getter,setter方法来调用。

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

温馨提示:内容为网友见解,仅供参考
第1个回答  2020-03-31

子类继承父类的所有的非私有的方法和属性。当父类的方法或属性被声明为private(私有的)时,子类是不可以继承的。

继承可以使得子类别具有父类别的各种属性和方法,而不需要再次编写相同的代码。在令子类别继承父类别的同时,可以重新定义某些属性,并重写某些方法,即覆盖父类别的原有属性和方法,使其获得与父类别不同的功能。

另外,为子类别追加新的属性和方法也是常见的做法。 一般静态的面向对象编程语言,继承属于静态的,意即在子类别的行为在编译期就已经决定,无法在执行期扩充。

扩展资料:

子类继承父类的注意事项:

1、在子类中可以继承父类的哪些东西,哪些不可以继承

父类中public、protected修饰的属性和方法可以继承,private修饰的属性和方法不能被继承

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

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

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

参考资料来源:百度百科-继承 (面向对象的继承)

本回答被网友采纳
第2个回答  推荐于2018-03-08
子类不能继承父类的所有方法和属性,只能继承父类所有的非private(私有)的属性和方法,而private成员是不能被继承的。 打个比方:你能继承你爸的财产,但不能继承你爸的所有财产。因为你爸要养老,这是会把财产的一部分作为私有,不让你继承。 JAVA的继承也就这样。本回答被网友采纳
第3个回答  2015-05-18
1 是的,在JAVA中,子类继承父类的所有方法和属性(构造方法要用关键super([参数])调用)另外,当父类的方法或属性被声明为private(私有的)时,子类也是不可以继承的。 2、继承是JAVA中一个重要的特色,便于程序的编写,提高代码的重用性。本回答被提问者采纳
第4个回答  2019-06-05

从语言角度来讲,子类不能使用父类的私有属性和方法,自己不能用算什么继承啊(Oracle的java官方文档说的私有不能被继承:“Members of a class that are declared private are not inherited by subclasses of that class.”)。但从内存来说,子类继承父类时是将子类与父类合并生成新的类,这时子类拥有父类的所有方法和属性,只是不能访问父类私有的。

相似回答