子类复写父类的方法时不能拥有比父类更严格的访问权限(更小的权限)
权限大小 private
package com.test.extendtest;
public class Person {
public void doSomeThing_public() {
System.out.println("Person doSomeThing_public");
}
void doSomeThing_default() {
System.out.println("Person doSomeThing_default");
}
private void doSomeThing_private() {
System.out.println("Person doSomeThing_private");
}
}
package com.test.extendtest;
public class Student extends Person{
public static void main(String[] args) {
//new Student().doSomeThing_public();
//new Student().doSomeThing_default();
new Student().doSomeThing_private();
}
//权限大小 private<default<public
//==============继承doSomeThing_public=============
/* public void doSomeThing_public() {
System.out.println("Student doSomeThing_public");//public-》public覆盖 Student doSomeThing_public
}*/
/*void doSomeThing_public() {
System.out.println("Student doSomeThing_public");//public-》default 编译不通过
}*/
/*private void doSomeThing_public() {
System.out.println("Student doSomeThing_public");//public-》private 编译不通过
}*/
//===============继承doSomeThing_default============
/*public void doSomeThing_default() {
System.out.println("Student doSomeThing_default");//default-》public不算覆盖 Student doSomeThing_default
}*/
/* void doSomeThing_default() {
System.out.println("Student doSomeThing_default");//default-》default覆盖 Student doSomeThing_default
}*/
/*private void doSomeThing_default() {
System.out.println("Student doSomeThing_default");//default-》private 编译不通过
}*/
//==============继承doSomeThing_private=============
/* public void doSomeThing_private() {
System.out.println("Student doSomeThing_private");//private-》public不算覆盖 Student doSomeThing_private
}*/
/* void doSomeThing_private() {
System.out.println("Student doSomeThing_private");//private-》default不算覆盖 Student doSomeThing_private
}
*/
private void doSomeThing_private() {
System.out.println("Student doSomeThing_private");//private-》private覆盖 //Student doSomeThing_private
}
}