基本原则:
public:公共的。跨类跨包访问
protected:保护的。子类可以访问即使子类跨包
default:默认访问模式。包内访问,不可跨包
private:私有。本类访问
权限大小:public > protected > default > private
对于类:
1、普通类
public: 对所有其它类可见,包括包外类
default: 只能对同一个包中的类可见,其它包内的类不能使用该类,即使使用import关键字
对于普通类只有这两种修饰符
2、内部类
public:对所有其它类可见,可跨包(前提是外部类是public的,如果外部类是default的,那只能对包内类可见)
可以如下使用:
Outer outer = new Outer(); //首先创建外部类实例
Outer.Inner inner = outer.new Inner(); //再创建内部类实例
protected:能被同包中的类和子类访问(子类不能跨包)
子类访问方式:
Inner inner = new Inner(); //直接使用内部类名访问
default:能被同包中的类和子类访问(子类不能跨包)
private:不能被其它类访问
对于方法与变量:
参考基本原则