所谓访问权限,指的就是本类中的成员变量、成员方法对其他类的可见性

试想一想,当我们修改一个非常庞大的项目时,如果所有变量和方法都是公共权限,那么后端中任何类都有权限去修改它的变量和方法,很有可能修改后就导致项目无法运行,对客户端的代码就会造成一定的影响

引入访问权限的概念就变得尤为重要

Java中有四种访问权限,分别是public、protected、包访问权限(默认)、private,如果省略了访问修饰符,那默认访问权限为包访问权限
这四种权限从最大权限最小权限分别是:
public > protected > 包访问权限> private

类的成员变量和方法访问权限

放一个看了很久却不一定记住的表:

修饰符 类内部 同包 子类 任何地方
public Yes Yes Yes Yes
protected Yes Yes Yes
包访问权限 Yes Yes
private Yes

包访问权限: 没有任何修饰符的权限就是包访问权限,意味着当前包的所有类都可以访问这个成员,如表中所示,对于本包之外的类,这个成员就变成了private,访问不了

public: 被public修饰的成员对任意一个类都是可用的,任何一个类都可以访问到,通过操作该类的对象随意访问public成员

protected: 在相同的class内部,同一个包内和其他包的子类中能被访问。要理解protected权限,就需要了解继承,因为这个权限处理的就是继承相关的概念,继承而来的子类可以访问public、protected

private: 除了包含这个成员的类之外,所有类都无法访问这个成员,相当于自我封闭,防止其他类改变或删除这个方法

类的访问权限

Java中的访问权限也可以用来修饰类。不过需要注意,对于普通类而言,类的访问权限仅有public包访问权限

· 如果一个类声明的时候用了public,则该类的类名必须与文件名一致,包括大小写,如果不匹配,会有编译错误

· 每个编译单元(文件)都只能有一个public类

· 当然不带public也是可以的,这时可以随时对文件命名

总结

对成员进行访问控制还是非常重要的,可以防止他人触碰那些不该触碰的部分,也可以清楚的了解哪些是重要的,哪些是可以忽略的,简化了对类的理解


需要Html作业、C语言作业、Java课设等学习资料的小伙伴,请关注公众号:Aime菌,后台回复福利即可获取


关注即可提高学习效率!我是Aime菌,下期再见!Peace~

Java中的四种访问权限:public、protected、包访问、private相关推荐

  1. java中的四种代码块

    原文链接: java中的四种代码块_Munt的博客-CSDN博客_java中代码块 在java中用{}括起来的称为代码块,代码块可分为以下四种: 一.简介 1.普通代码块: 类中方法的方法体 2.构造 ...

  2. java 代码块_详解java中的四种代码块

    在java中用{}括起来的称为代码块,代码块可分为以下四种: 一.简介 1.普通代码块: 类中方法的方法体 2.构造代码块: 构造块会在创建对象时被调用,每次创建时都会被调用,优先于类构造函数执行. ...

  3. Java 中的四种引用

    垃圾收集器与内存分配策略参考目录: 1.判断Java 对象实例是否死亡 2. Java 中的四种引用 3.垃圾收集算法 4. Java9中的GC 调优 5.内存分配与回收策略 在进行垃圾回收之前,虚拟 ...

  4. Java中的四种内部类

    Java中有四种内部类: 成员内部类:定义在另一个类(外部类)的内部,而且与成员属性和方法平级,故称成员内部类.类比于外部类的非静态方法,如果用static修饰就变成了静态内部类 静态内部类:使用st ...

  5. Java中的四种访问修饰符:public、default、protect和private

    前言 Java中有四种访问修饰符用于控制类.接口.变量和方法的封装程度.这四种修饰符分别为: private 私有的,类可见性 package/friendly/default 包级别的/友好的/默认 ...

  6. java中有几种内部类,Java中的四种内部类

    四种内部类 在Java 中,可以将一个类定义在另一个类里面或者一个方法里面,这样的类称为内部类.广泛意义上的 内部类一般来说包括这四种:静态内部类.匿名内部类.成员内部类和局部内部类,下面我们一一介绍 ...

  7. java四种内部类区别_浅谈Java中的四种内部类

    如果你看过一些JDK和框架源码的话,就经常会发现一般在类的定义中,都会再定义一些其他的类,这些类也同样会被编译成字节码文件,这样的类就被叫做 内部类 ,按照一般的分法,大致可以分为以下四类: 成员内部 ...

  8. Java 中的四种引用类型

    一.背景 Java的内存回收不需要程序员负责,JVM会在必要时启动Java GC完成垃圾回收.Java以便我们控制对象的生存周期,提供给了我们四种引用方式,引用强度从强到弱分别为:强引用.软引用.弱引 ...

  9. Java 中的四种引用及垃圾回收策略

    Java 中有四种引用:强引用.软引用.弱引用.虚引用: 其主要区别在于垃圾回收时是否进行回收: 1.强引用 使用最普遍的引用.如果一个对象具有强引用,那就 类似于必不可少的生活用品,垃圾回收器绝不会 ...

最新文章

  1. ***和******
  2. 刚刚,谷歌终于回应AI专利争议:怕被碰瓷,抢先下手,永不牟利
  3. Omad群组部署、依赖部署一键解决
  4. gradle插件用户指南(翻译)
  5. 原相机怎么拍出网图_专访5位时尚生活达人,他们都用哪款相机记录生活美好瞬间...
  6. java在捕获异常并弹窗_Java捕获异常的问题
  7. FlvDownloader升级版DownloaderPlus发布
  8. java switch中标签重复_java程序 怎样把id相同的记录挑出来,分别存到不同的文件中,除了switch case,数据量很大,id种类很多。...
  9. c语言中被调用函数只需在主调函数中声明,其他函数中不用声明,求助,函数在其他函数中使用时要先声明后调用,这个没声明就用了...
  10. python 搭建web_webpy搭建一个简单的网站
  11. iZotope Trash 2 for Mac(失真效果音频插件)
  12. 2019年1024,deepin安装原生Linux QQ
  13. C语言每日一练——第88天:汉诺塔问题(河内塔)
  14. window环境mysql卸载不干净
  15. 中国企业OFDI微观数据(2005.6-2018.6)
  16. Pda 数据库同步问题
  17. 浅析TVS管的响应时间与TVS管伏安特性曲线
  18. ucl计算机学院位置,2017伦敦大学学院设施及地理位置介绍
  19. mapbox加载天地图
  20. Google浏览器清理缓存

热门文章

  1. 为抵制 7-Zip,列出 “三宗罪” ?网友:“第3个才是重点吧?”
  2. postman 成功,python requests 失败
  3. 用于溢出漏洞研究的Socket服务端程序
  4. 自己动手写一个通信协议
  5. nodeValue、firstChild和lastChild属性
  6. 游戏蓝牙耳机哪款比较好?低延迟游戏蓝牙耳机推荐
  7. python里config_Python config.get_config方法代码示例
  8. Striving For Simplicity-the All Convolutional Net 笔记
  9. 凡科的ns服务器如何修改,ns怎么把服务器设置成日服
  10. 替代定理和戴维宁诺顿定理