我想给方法提供只有子类和当前类可以调用的访问权限。例如:
public class Parent{
something void mySetterMethod(int input){
this.something = input;
}
}
public class Child extends Parent{
mySetterMethod(otherInput);
}
但是这不能用于:
public class SomeClassInSamePackage(){
public static void main(String[] args){
Parent parent = new Parent();
parent.mySetterMethod(input);
}
作为一般建议优先考虑组成而不是继承]。
public class Parent { public void mySetterMethod(int input){ this.something = input; } } public class Child { private final Parent parent = new Parent(); ... parent.mySetterMethod(otherInput); ... }
您不能只从同一包中调用它。
作为历史记录,Java 1.0具有private protected
,尽管显然它有问题。