4 access levels and 3 access modifiers in java

 Java语言包括四种访问权限,范围从小到大依次为:private,default,protected,public;它们对应的修饰符:private,(默认),protected,public,没有修饰符的Java代码的访问权限就是default。

ok,现在来近距离的了解它们:

首先,注意的是,这四个访问权限针对的是类,而不是对象!比如说,如果在代码中去访问它没有权限访问的java的一些东西(类、方法、成员变量),会被java编译器拒绝编译,因为java编译器知道你的类中这段代码没有这个权限访问这个特殊的java thing。

private vs default vs protected vs public

在开发中用得最多的就是private和public了,private一般用于成员变量,私有的内部方法;public用于提供对外接口的类,方法;default和protected用得相对较少,一般用于设计

private:只有在同一个类里面的代码才能访问private权限的Java thing(成员变量、方法)

default:只能在同一个包下面的代码才能访问default权限的Java thing(类、方法、成员变量),比如说一个类,它不能出现在包外的任何代码中(不能作为参数类型,不能作为返回类型,不能作为成员变量类型),它只能被同一个包下的代码使用。一般在开发中default类是用于包内部使用,不对外提供服务,包里面有几个public类向外提供接口,以供调用。

protected:与default 相似,但protected权限的类能被包外的类继承,而前面提到的default权限的类是不能出现在包外的任何代码中(包括包外的继承)。这样 protected的类的方法能够通过被包外的子类覆写调用(super.XXX)。注意,包外的子类只能覆写调用protected的父类,不能在代码中实例这个父类,因为它的权限与default相识(包访问)!

public:可以被任何地方的代码访问。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值