访问控制符

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

public

public是最大的访问权限修饰符,其修饰的成员变量,构造方法和普通方法可在任何一个类中被操作或使用。这两个是在不同包内,但也是可以在另外一个类中建立对象直接调用他的属性与方法。
在这里插入图片描述

protected

只讨论在不同的包内:
1;继承
protected修饰的成员变量,构造方法和普通方法可以在其定义类中,与定义类同包的其他类中和与定义类不同包但是其子类的类中使用。如果proteced修饰的属性和方法均为非静态,则只能通过子类实例化对象调用其继承过来的属性和方法,则不能使用父类实例化的对象去调用:
在这里插入图片描述
其中用创建父类对象调用显示的是错误的,则必须用创建子类调用。
在这里插入图片描述
如果protected修饰的属性和方法均为静态的,则子类可以通过(子类类名或父类类名)直接调用,但依旧不能实例化父类对象调用
在这里插入图片描述
2,在非继承下的不同包,一个类中protected的属性和方法在另一个类中无法创建对象进行调用。
在这里插入图片描述

friends

友好的修饰的成员变量,构造方法和普通方法可以在其定义类中和与定义类中与定义类同包的其它类(可以使子类)中使用。其中在不写任何权限的方法和属性中系统会默认为友好权限。只能在同包中调用,在不同包,继承情况下是不能调用的。
在这里插入图片描述
创建对象在另一个类中也不能直接调用其中自身的属性和方法。
在这里插入图片描述

private

他是最小的访问权限控制符,其修饰的成员变量,构造方法和普通方法只能在定义他们的类中被操作或使用。其中的用private的作用在于能程序设计者能收回变量赋值的权限,可以更具设计者的设定而规定变量的赋值范围;
就是封装,公共方法操作私有属性,
private int age;
public void setAge(int age)
{
if(age>0&&age<20)
this.age=age
else
system.out.println(“不再范围内”);
在同一类中公共方法可以对私有属性进行赋值进而可以设置范围权限的;

  • 0
    点赞
  • 0
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

“^飞鸿翔天^”

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

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

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

打赏作者

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

抵扣说明:

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

余额充值