【JAVA面向对象编程机制——封装性】 2 Java访问权限限制(Java包 、Java类的访问权限 )

2.1 Java包

●随着Java类越写越多,难免会出现类重名的现象。为了组织管理这些Java类,引入Java包(package)。

例如,甲和乙都叫张三,但是怎么区分呢?我们通常会说这个张三的特征,比如高个子张三,那个被狗咬过的张三,出糗的张三,这样就给张三这个人加了一个特定前缀,就是包。这样可以更方便的管理Java程序中的类,也出现了重名类不同方法的实现,使Java语言更具多样性。

●包就是文件夹结构,因为它是一种树形结构的路径,他通过 ‘ . ’
运算符知名包的层次,比如 类Muchu 位于包 java.muchu中,就是指类Muchu在文件夹 \java\muchu 中。

1.引入和使用包的类

1).在应用程序中使用类的全名,包名 + 类名
2).通过 import 关键字导入相应的类/包

①导入类示例

Java.muchu.Muchu zhangsan = new Java.muchu.Muchu();

②导入包示例

import Java.muchu.Muchu
Muchu zhangsan = new Muchu();

两种情况例外:
●位于同一个包中的类可以相互引用,不用使用import语句或者类的全名。

●在源程序中用到Java类库中的 java.long 包中的类,可以直接引用,不用使用import语句或者类的全名。

2.自定义包

通过package关键字定义一个包时,package语句必须是文件中的第一条语句。

2.2 Java类的访问权限

表格2.2.1中 Java类中成员访问权限的范围【JAVA面向对象编程机制——封装性】 2 Java访问权限限制(Java包 、Java类的访问权限 )_第1张图片

●用private修饰的属性和操作只能被该类自身的操作访问和修改。

●用default,类内的属性和操作没有被访问控制符限定,说明他么具有包访问属性,可以被同一个包中的其他类所访问和调用。

●用protected 修饰我的类成员变量可以被3种类所访问和调用: 该类自身 、 与他同在一个包中的类 、 在其它包中该类的子类。

●用public(公共的),可以被任意其他类访问和调用。

你可能感兴趣的:(Java面向对象编程机制,java,封装)