Java包和类访问修饰符
时间:2019-04-29 03:17:57 来源:igfitidea点击:
面向对象编程的两个重要概念是根据实体的功能或逻辑来分离实体,并在类中隐藏数据和行为(封装)。为此,我们可以使用类来定义具有属性和行为(其方法)的实体。在更高的层次上,为了更好地组织应用程序模块,我们可以使用包来分离不同程序员的工作,或者根据其逻辑或实用程序在模块中聚合类。
包非常重要,因为它允许不同的程序员独立地命名它们的类。例如,每个程序员可以定义自己的 Utility类,而不会生成冲突编译器错误(编译器不知道要实例化哪个 Utility类 ): 重复类。
软件包的推荐命名约定是反向域名,并添加分区和项目名。例如,我可以为这样的聊天应用程序命名一个包
package com.theitroad.chat.client;
有关SCJP认证所需的软件包的其他重要规则:
包声明必须是文件中的第一行(导入声明之前)
如果要使用其他包中的类,必须使用导入声明指定包名称
导入声明是在包声明(如果有)和第一类声明之间定义的
如果只想从另一个包使用某一个类,可以这样定义导入:
`import packageName.className;`
如果要使用另一个包中的所有类,那么向厦门这样定义导入:
import packageName.*;
其中TestClass.java文件:
package com.theitroad.test; public class TestClass { int attribute; }
Main.java文件:
package com.theitroad.main; import com.theitroad.test.*; public class Main { public static void main(String[] args) { TestClass tc = new TestClass(); } }
什么是类访问
Java平台通过字节码验证器、类加载器和安全管理器实现严密的安全性。在源代码级别实现安全性的一种方法是控制类访问,这意味着:
- 该类在其他包中可见;
- 可以使用该类从同一个/其他包在其他类中创建实例;
- 可以在同一/其他包中扩展一个新的类;
- 可以从同一个/其他包的其他类中访问该类的属性或方法(这里还必须考虑属性和方法访问修饰符);
什么是类访问修饰符
类修饰符是:
- defalut(不使用任何东西时);相当于包级访问,因为在任何源文件中,同一包内的类只能看到该类;
- public表示该类在任何地方(在任何包中,在任何源文件中)都可见;
package p1; //使用public访问权限 public class Class1 {} //使用默认访问权限 class Class2 {}