Java访问控制权限

导语

封闭性与访问控制权限是有直接联系的。

主要内容

  • Java访问控制权限

具体内容

在Java里面一共支持四种控制权限。public、protected、default、private,而这四种访问控制权限特点:

No.范围privatedefaultprotectedpublic
1在同一个类中
2在同一包的不同类
3在不同包的子类
4在不同包的非子类

除了public之外,对于封装可以使用private、protected、default,只不过一般不会去考虑使用default。
重点来看protected这种权限。它直接与包的定义有关。

protected访问权限

protected访问权限,它直接与包的定义有关。

**范例:**protected访问权限
定义cn.mldn.demoa.A类

package cn.mldn.demoa;

public class A {
    protected String info = "Hello";
}

定义cn.mldn.demob.B类

package cn.mldn.demob;
improt cn.mldn.demoa.A;

public class B extends A {  // 是A不同包的子类
    public void print() {
        System.out.println("A类中的info = " + super.info)
    }
}

定义Test类

package test;
improt cn.mldn.demob.B;

public class Test {
    public static void main(String args[]) {
        new B().print();
    }
}

输出结果:

A类中的info = Hello

B中的print()方法会输出A类中的info属性。
Test类直接去输出A类中的info属性(错误代码)

package test;
improt cn.mldn.demoa.A;

public class Test {
    public static void main(String args[]) {
        A a = new A();
        System.out.println(a.info);
    }
}

编译会出错,由于Test与A类不在同一个包,并且没有继承关系,所以是无法访问protected属性的。

总结

Java的封装性是以private、protected、default三种权限的定义。

进入我的CSDN戳这里(我的博客导航)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值