在java继承中,私有属性能否被继承
其实在继承中,子类可以继承父类的私有属性的内容空间,但是不能继承父类私有属性的访问权限,下面看代码
父类Animal
public class Animal { private String name = "老虎"; //私有属性name,并初始化 public int age; public String getName() { //公有方法 return name; } public void setName(String name) { //公有方法 this.name = name; } }
子类cat继承父类
public class Cat extends Animal { }
测试类
public class MyTest { public static void main(String[] args) { Cat cat=new Cat(); cat.setName("小猫"); System.out.println(cat.getName()); System.out.println("------------------"); Animal animal=new Animal(); System.out.println(animal.getName()); } }
结果
如结果所示:子类对象cat在调用setName()方法后,父类的name并没有改变,而子类对象调用getName()方法时值改变了,因此可以判断子类自己拥有name属性。所以父类的私有属性紫泪可以继承其内容空间,但是不能继承其访问权限。