8.1.2 考点2:对象的生成、使用和删除
1.对象的生成
类是创建对象的模板,而对象是类的实例。对象是一组属性和方法的封装体,创建对象使用保留字new,格式如下:
<类型> <对象名> = new <类型> ([参数])
说明如下:
① 类型包括类和接口的复合类型。
② new实例化一个对象,调用该类的构造方法,并分配给这个对象相应的内存。
③ 当一个类通过重载,定义了几个构造函数时,用户可以通过使用不同的参数调用相应的构造方法。
2.对象的使用
原则:先定义后使用。
使用范围:访问类成员变量、调用类成员方法、对象作为类成员使用,以及作为方法的参数(或返回值)使用。
说明如下:
① 成员变量的访问和成员方法的调用可以通过“.”运算符实现,格式为:
<对象名>.<调用的类成员变量名或方法名>
② 对象作为类成员使用时,必须首先分配内存,并且可以用private修饰符保证数据安全。
③ 对象作为方法的参数时,采用引用调用。
3.对象的删除
对象使用完了之后,需要将分配给对象的内存释放。基本途径如下:
① 依靠Java垃圾回收机制;
② 调用System.gc()方法;
③ Java系统开始运行时,自动调用java.lang.Object.finalize();
④ 调用重写的finalize()。
例8.1.2 下列构造方法的调用方式中,正确的是( )。[2005年4月 选择第19题]
A.按照一般方法调用 B.由用户直接调用
C.只能通过new自动调用 D.被系统调用
答案:C
8.1.3 考点3:接口和包
1.接口
接口用于实现类间多重继承,它定义为一种只含有抽象方法或常量的特殊抽象类。
本章节内容来自全国计算机等级考试用书《计算机等级考试考点分析、题解与模拟——二级Java语言》。 关于接口的几点说明如下:
① 接口是一种特殊的抽象类,抽象类必须被继承、抽象类不能实例化、抽象方法必须被重写;
② 接口中的属性都是常量;
③ 接口中的方法都是没有方法体的抽象方法。
2.包
① package语句的基本结构如下:
package <顶层包名> [.<子包名>].* ;
警钟长鸣:在源文件的开始处指定包声明;每个源文件只能有一个包声明;如果没有包声明,则该类属于“默认”包;包的名称有层次且由点号分开。
② import语句的基本结构:
import <包名> [.<子包名>].<类名>;
或者import <包名> [.<子包名>].*;
警钟长鸣:import语句位于所有的类声明之前;每个源文件可以有多个import语句;Java语言的Java.lang包是编译器自动导入的。
例8.1.3 任何一个Java程序都默认引入一个包,这个包的名字叫________。[2006年4月 填空第14题]
答案:Lang
例8.1.4 用来导入已定义好的类或包的语句是( )。[2005年9月 选择第11题]
A.main B.import C.public class D.class
答案:B
8.1.4
考点4:类成员修饰符、继承、内部类、类库
1.类成员修饰符
修饰符包括访问限定符和非访问限定符两类。
① 访问限定符是限定类、属性或方法被程序里的其他部分访问和调用的修饰符,有