访问权限修饰符[java]

作用:用来修饰类、成员变量、成员方法、内部类,控制对其访问的权限。

Java语言有四个权限访问修饰符,权限从大到小依次为:

1)public :公共权限,可以被任意类访问,不同包不同类依然可以访问

可修饰:类、成员变量、方法,内部类

2)protected:受保护的权限,可以被同包类访问,如果不是同包类,必须是该类的子类才可以访问

可修饰:成员变量、方法、内部类

3)default:默认的(无),同包权限,只能被同包的类访问

可修饰:类、成员变量、方法,内部类

4)private:私有权限,只能在本类中访问,同包其他类也不能访问

可修饰:成员变量、方法、内部类

访问权限:

4e74eb1e99d54edf95828d392dd8f84d.png

以上在本类中都可以访问到:

案例:

public class Demo1 {
    public String pubname;
    protected String proname;
    String name;
    private String priname;
​
public static void main(String[] args) {
    //没有加static,所以这里要创建一个对象
    Demo1 demo1 = new Demo1();
    System.out.println(demo1.pubname);
    System.out.println(demo1.proname);
    System.out.println(demo1.name);
    System.out.println(demo1.priname);
    }
}

注意:protected修饰的成员变量,在不同包中的子类可以访问父类受保护的成员

public class TestDemo1 extends Demo1{
   public static void main(String[] args) {
      Demo1 demo1 = new Demo1();
      //不同包不同类公共权限依然可以访问
      System.out.println(demo1.pubname);
      //受保护,默认的不能访问
      //System.out.println(demo1.proname);
      //System.out.println(demo1.name);
​
      TestDemo1 testDemo1 = new TestDemo1();
      //在不同包的子类中可以访问父类中受保护成员
      System.out.println(testDemo1.proname);
      //在同包的其他类中只能访问 公共的,受保护,默认的
      //私有权限只能在自己类中访问,同包其他类也不能访问
      //父类中的私有的子类不能访问,受保护的子类可以访问
    }
}

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

chen☆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值