JAVA访问控制修饰符和包
在类中,要合理地隐藏和合理地暴露,隐藏一些不想被外界操作的field、方法、构造器。
封装的目的是简化编程、更好地保证对象的完整性。
为了实现隐藏,有以下几个修饰符:
private:只有当前类访问的。
省略修饰符:包访问权限,同一包才能访问。
protected:子类、包、当前类可访问。
public:公共访问权限。
权限从小到大为:
private、省略、protected、public
private:
用于隐藏field,比如对field的值有要求,可以用private隐藏起来,使外界不能通过对象.field直接赋值,而是通过方法赋值,可以控制值的内容。
public:
用于暴露方法。
protected:
希望它被子类访问。
默认:
希望在同一包中被访问。
包:
作用相当于命名空间,如果多个人定义的类名相同,就需要加个前缀代表哪个人的类,Java要求每个类名是包名.类名。
定义包:
package 包1.包2.包3......包N;
包命名规则是公司域名的倒写。
对于一个类,public前缀代表在包内包外都能访问,省略代表只能在包内访问.
把类放在包内:
package 包名; //写在在类源代码中开头,包名小写。
如果想在包外使用包内的类,要使用包名.类名,另一个简便方法是使用import导入包,格式为在源代码文件开头:
import 包名.* //导入包的命名空间
就可以直接用包内的类名了。
静态导入:
import static 包名.类名.* //导入类中静态field和方法。
导入类下面所有静态成员,相当于省略到类,直接import只能省略到包。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)