你好有java学习资料吗,还有图像识别这一块想请教一下,感谢可以适当有偿
是初学者吗?
不知道你这个问题是否已经解决, 如果还没有解决的话:Java中子类是否继承了父类的私有属性及方法?
看课本上所描述的,子类继承父类,子类拥有父类所有的属性和方法,于是使用程序去验证,发现父类的私有属性和私有方法,子类是不能访问的,当然一些父类的私有属性可能可以通过相应的方法访问到,需要父类提供public getter或者setter方法让子类进行属性的访问,但是私有的方法似乎不能简单的访问,于是我认为,子类不能继承父类私有的属性及方法,但事实上并没有那么简单。
在
甲骨文JAVA官方学习文档中,提到1、关于私有成员变量
无论父类中的成员变量是私有的、共有的、还是其它类型的,子类都会拥有父类中的这些成员变量。但是父类中的私有成员变量,无法在子类中直接访问,必须通过从父类中继承得到的protected、public方法(如getter、setter方法)来访问。
2、关于静态成员变量
无论父类中的成员变量是静态的、还是非静态的,子类都会拥有父类中的这些成员变量。
3、关于被子类覆盖的成员变量
无论父类中的成员变量是否被子类覆盖,子类都会拥有父类中的这些成员变量。
代码测试:
package demo;
/**
* @author Administrator
*Description :子类继承父类测试
*Date 12/26 11:23
*/
public class Main {
public static void main(String[] args){
Student mStudent = new Student("子类");
System.out.println("Name is : " + mStudent.getName());
mStudent.setName("父类");
System.out.println("Name is : " + mStudent.getName());
}
}
class Person{
private String name;
public Person(String name){
this.name = name;
}
public void setName(String name){
this.name = name;
}
public String getName(){
return name;
}
}
class Student extends Person{
public Student(String name){
super(name);
}
}
参考文章:
oracleJava文献资料
Java中子类继承了父类的私有属性及方法吗?
继承:子类可以继承父类的私有成员变量吗??