子类为啥不能直接调用父类的属性

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了子类为啥不能直接调用父类的属性相关的知识,希望对你有一定的参考价值。

class Text1
public int x=1;

public class Text3 extends Text1
public static void main(String[] args)
System.out.println(x);


为什么不能调用,子类不是应该继承父类的X了吗

在集成的时候 父类的属性会被保护。如果想要调用父类的属性必须使用父类对象super 去调用 ,不然访问不了。你在子类中没有X的属性,所以在调用时使用this或super调用属性,这个时候不论是this还是super 调用的都是父类的X属性。 参考技术A 静态方法中不能使用非静态成员。

JAVA中,子类将继承父类的所有属性和方法么~?为啥?

两个问题都要回答哦``谢谢``

是的,子类将继承父类的非私有的属性和方法。

在JAVA中,子类继承父类的所有方法和属性(构造方法要用关键super([参数])调用);继承是JAVA中一个重要的特色,便于程序的编写,提高代码的重用性。

1、如果给子类i提供get和set 通过get调用的自然是子类的。

2、如果给父类和子类分别提供get和set,调的仍然是子类的,因为方法被重写。

扩展资料

在继承中用到super调用父类的构造

private String name;

private String sex;

public xinxin1(String name,String sex)

this.name=name;

this.sex=sex;

public void hello()

System.out.println(“嗨!我是”+name+”我是”+sex+”孩”);

参考技术A 1、是的,除了JAVA中,子类继承父类的所有方法和属性(构造方法要用关键字super([参数])调用)
另外,当父类的方法或属性被声明为private(私有的)时,子类也是不可以继承的。
2、继承是JAVA中一个重要的特色,便于程序的编写,提高代码的重用性。本回答被提问者采纳
参考技术B 当一个类拥有另一个类的所有数据和操作时,就称这两个类之间具有继承关系。
被继承的类称为父类或超类,继承了父类或超类的所有数据和操作的类称为子类。
子类将拥有父类或者超类的所有属性和方法。
在Java语言程序设计类头定义中用extends表明子类与父类的继承关系。
参考技术C private 的属性和方法是不能被继承的。
能继承public,default,protected 的属性和方法。

因为父类就是子类的模板,当然能继承,但是private只有对类本身才具有可见性,所以子类不能继承其方法和属性。
参考技术D 每个子类对象都包装有父类的一个对象,每次调用子类的构造函数都会调用父类的构造函数进行初始化。你可以简单的理解为,子类就是父类的一个修改扩展版。

以上是关于子类为啥不能直接调用父类的属性的主要内容,如果未能解决你的问题,请参考以下文章

JAVA中,子类将继承父类的所有属性和方法么~?为啥?

JAVA中,子类将继承父类的所有属性和方法吗?为啥?

Object在其子类中,为啥不能调用clone()???

java中,子类的构造器为啥要调用父类构造器?

为何需要虚函数 直接对象名加作用域来调用子类父类爷类的函数不就行了 为啥

错题0913