- 重构:重写代码,以使得它更可读、更易理解,并因此而更具可维护性。
最大权限到最小权限依次为:public、protected、包访问权限(没有关键字)和private
import java.util.*;//导入java.util中的所有的类
名词解释
- 编译单元:Java源代码文件(每个编译单元都必须有一个后缀名.java,而在编译单元内只可以有一个public类,该类的名字必须与文件的名称相同。如果在该编译单元之中还有额外的类,在包之外的世界是无法看见这些类的。包内的世界可以看见这些类)
- 类库:是一组类文件。其中每一个文件都有一个public类,以及任意数量的非public类。因此每个文件都有一个构件,如果希望这些构建(每一个都有他们自己的独立的.java和.class文件)从属于同一个群组,就可以使用关键字package。(非public类也会生成.class文件)
Java访问权限修饰符
- 如果不提供任何访问权限修饰词,则意味着它是“包访问权限”
- 取得对某成员的访问权限:
(1)使该成员成为public。
(2)通过不加访问权限修饰词并将其他类放置于同一个包内的方式给成员赋予包访问权限。
(3) 继承类可以访问public成员也可以访问protected成员。只有两个类都处于同一个包内时,它才可以访问包访问权限的成员。
(4) 提供访问器和变异器方法(get和set方法)以读取和改变数值。 - 包访问权限:默认访问权限没有任何关键字,单通常是指包访问权限。(当前包中的所有其他类对那个成员都有访问权限,但对于这个包之外的所有类,这个成员不能被访问。)
- private:除了包含该成员的类之外,其他任何类都无法访问这个成员。
- protected:继承访问权限。继承类可以访问,相同包内的其他类也可以访问。
接口和实现
- 访问权限的控制常被称为具体实现的隐藏。
- 封装:把数据和方法包装进类中,以及具体实现的隐藏。封装的结果是一个同时带有特征和行为的数据类型
- 访问权限控制将权限的边界划在数据类型的内部的原因:
(1)设定客户端程序员可以使用和不可以使用的界限。可以在结构中建立自己的内部机制。
(2)将接口和具体实现进行分离。从而就可以随便更改所有不是public的东西。
注意
- Java包的命名规范全部使用小写字母,包括中间的字也一样。
问题
Java运行时如何找到.class文件