java四种权限修饰符
Java中有四种权限修饰符:
|
public > |
protected > |
(default) > |
private |
| 同一个类(我自己) |
YES |
YES |
YES |
YES |
| 同一个包(我邻居) |
YES |
YES |
YES |
NO |
| 不同包子类(我儿子) |
YES |
YES |
NO |
NO |
| 不同包非子类(陌生人) |
YES |
NO |
NO |
NO |
注意事项:
(default)并不是关键字“default”,而是根本不写。
sub包中的类
1 2 3 4 5 6 7 8 9 10 11
| package cn.itcast.day11.demo02.sub;
import cn.itcast.day11.demo02.MyClass;
public class Stranger {
public void methodStrange() { System.out.println(new MyClass().num); }
}
|
1 2 3 4 5 6 7 8 9 10 11 12
| package cn.itcast.day11.demo02.sub;
import cn.itcast.day11.demo02.MyClass;
public class MySon extends MyClass {
public void methodSon() {
}
}
|
demo02包中的类
1 2 3 4 5 6 7 8 9 10 11
| package cn.itcast.day11.demo02;
public class MyClass {
public int num = 10;
public void method() { System.out.println(num); }
}
|
1 2 3 4 5
| package cn.itcast.day11.demo02;
public class Demo01Main { }
|
1 2 3 4 5 6 7 8 9
| package cn.itcast.day11.demo02;
public class MyAnother {
public void anotherMethod() {
}
}
|