2017计算机二级JAVA要点知识复习

采用下述命令编译:

javac Test.java

则编译器会在当前目录下生成 Test.class 文件, 再在适合位置手动创建一个名为 p1 的子目录,将 Test.class 复制到该 p1 目录下。

采用简化的编译命令,就是可以带包编译

javac -d destpath Test.java

归入该包的类的字节代码文件应放在 java 的类库所在路径的 destpath 子目录下。 现在包的相对位置已经决定了,但 java 类库的路径还是不定的。事实上,java 可以有多个存放类库的目录,其中的缺省路径为 java 目录下的 lib 子目录,你可以通过使用-classpath 选项来确定你当前想选择的类库路径。 除此之外, 你还可以在 CLASSPATH 环境变量中设置类库路径。 destpath 为目标路径, 可以是本地的任何绝对或相对路径。 则编译器会自动在 destpath目录下建立一个子目录 p1,并将生成的.class 文件自动保存到 destpath/p1 下。例如:

javac -d .\ Test.java

javac -d C:\test\ Test.java

2.4:带包 运行

运行带包的程序,需要使用类的全路径,也就是带包的路径,比如上面的那个程序,就使用如下的代码进行运行:

java p1.Test

3:import

为了能够使用某一个包的成员,我们需要在 Java 程序中明确导入该包。使用“import”语句可完成此功能。在 java 源文件中 import 语句应位于 package 语句之后,所有类的定义之前,可以有 0~多条,其语法格式为:

import package1[.package2…].(classname|*);

java 运行时环境将到 CLASSPATH + package1.[package2…]路径下寻找并载入相应的字节码文件 classname.class。 “*”号为通配符,代表所有的类。也就是说 import 语句为编译器指明了寻找类的途径。

例,使用 import 语句引入类程序:TestPackage.java

java 编译器默认为所有的 java 程序引入了 JDK 的 java.lang 包中所有的类(import java.lang.*;) ,其中定义了一些常用类:System、String、Object、Math 等。因此我们可以直接使用这些类而不必显式引入。但使用其它非无名包中的类则必须先引入、后使用。

3.1:Java 类 搜寻方 式

程序中的 import 语句标明要引入 p1 包中的 Test 类, 假定环境变量 CLASSPATH 的值为

“.;C:\jdk6\lib;D:\ex” , java 运行环境将依次到下述可能的位置寻找并载入该字节码

文件 Test.class:

.\p1\Test.class

C:\jdk6\lib\p1\Test.class

D:\ex\p1\Test.class

其中, “.”代表当前路径,如果在第一个路径下就找到了所需的类文件,则停止搜索。

否则依次搜索后续路径,如果在所有的路径中都未找到所需的类文件,则编译或运行出错。

4: 访问修饰 符

Java 语言允许对类中定义的各种属性和方法进行访问控制, 即规定不同的保护等级来限制对它们的使用。为什么要这样做?Java 语言引入类似访问控制机制的 目的 在 于实 现 信息的 封 装 和 隐藏。 Java 语言为对类中的属性和方法进行有效地访问控制, 将它们分为四个等级:private, 无修饰符, protected, public,具体规则如下:

变量和方法可以处于四个访问级别中的一个:公共,受保护,无修饰符或私有。类可以在公共或无修饰级别。

变量、方法或类有缺省(无修饰符)访问性,如果它没有显式受保护修饰符作为它的`声明的一部分的话。这种访问性意味着,访问可以来自任何方法,当然这些方法只能在作为对象的同一个包中的成员类当中。

以修饰符 protected 标记的变量或方法实际上比以缺省访问控制标记的更易访问。 一个protected 方法或变量可以从同一个包中的类当中的任何方法进行访问, 也可以是从任何子类中的任何方法进行访问。 当它适合于一个类的子类但不是不相关的类时, 就可以使用这种受保护访问来访问成员。

5: 类定义

Java 程序的基本单位是类,你建立类之后,就可用它来建立许多你需要的对象。Java把每一个可执行的成分都变成类。

类的定义形式如下:

这里,类名要是合法的标识符。在类定义的开始与结束处必须使用花括号。你也许想建立一个矩形类,那么可以用如下代码:

6:构 造方 法

6.1:什么是构造方法

类有一个特殊的成员方法叫作构造方法, 它的作用是创建对象并初始化成员变量。 在创建对象时,会自动调用类的构造方法。

6.2:构 造方 法定义规则

Java 中的构造方法必须与该类具有相同的名字,并且没有方法的返回类型(包括没有void) 。另外,构造方法一般都应用 public 类型来说明,这样才能在程序任意的位置创建类的实例--对象。

6.3:示 例

下面是一个 Rectangle 类的构造方法,它带有两个参数,分别表示矩形的长和宽: