- 声明为protected的方法和成员变量能被同一个包里的所有类所访问,就像默认修饰符package一样
- 子类不与父类在同个包下,父类仍然能调用子类对象继承的protected修饰的方法或者属性
- 子类不与父类在同包下,子类继承了的父类protected方法或属性,可以在子类的包中使用
二 继承实例
目录结构
package father;
import son.Son;
public class Person {
protected void run(){
System.out.println("执行person->run");
}
public static void main(String[] args) {
Person person = new Person();
person.run();
Son son = new Son();
// 子类的protected方法,可以在父类包中使用
son.run();
}
}
package son;
import father.Person;
public class Son extends Person {
public static void main(String[] args) {
Person person = new Person();
// 父类中的protected方法不与子类在同个包下,无法调用
// person.run();
Son son = new Son();
// 子类继承父类后,protected方法在子类包中可以使用
son.run();
}
}