子类是不能够直接访问父类中的private变量的
可行的解决方法有:
①将变量的访问权限修饰词改为public或者protected或者default(什么都不写)
②在父类中写一个public的成员方法获得private变量的值
示例代码如下:
用这种方法是比较安全的,变量控制为私有,通过get方法得到它的值,通过set方法修改它的值
Poultry类中见不到BirdDemo的name属性,因为name是私有的,不会被继承,你可以把访问权限改为protected或public,如果一定要是private,想访问只能在BirdDemo写个protected或public方法访问,然后Poultry类会继承,正如你上面BirdDemo的getName方法。
Private变量在子类中是不能访问的。
如果你实在是要用这个变量,可以在子类中定义个和父类中名称完全一样的变量,效果一样。
您好,提问者:
private是不能在别的类中访问的。
1、public可以在别的类中访问。
2、默认不写的类也可以在别的类中访问。
理论上Java类中的任何属性和方法都是能够访问的,这涉及到Java比较底层的特性如内省操作,但一般不会使用