权限由大到小public > protected > 不写 >private
这四种修饰符我们分四种情况讲解,分别是同一个类,同一个包,不同包子类,不同包无继承
同一个类
1我们知道在类内部定义的private变量,方法都可以调用,所以所有的关键字都可以在类内部的访问
同一个包
我们知道在一个包中,一个类的private属性是不能在另一个类里访问变量,而我们不写时可以访问
所以同一个包下,访问不同类的变量,public,protected,不写 ,这三种都可以访问,而private不行
不同包子类
2首先我们先创建不同包子类情况,我们demo右键new一个package,包里创建Son类继承MyClass,这里IDE会自动添加导入,因为是不同包,所以需要导入
3 4我们设置protected时,子类可以访问父类属性a
5 6而当我们写为默认权限时,则会报错,
所以不同包子类继承时,public,protected可以访问,不写和private不能访问
不同类无继承
如下,我们这次没有了继承关系,我们使用protected,也会报错
7 8只有public才能访问
9总结出权限修饰符如下
10
网友评论