1、计算机 Java 认证-1 (1)及答案解析(总分:100.00,做题时间:90 分钟)一、填空题(总题数:8,分数:16.00)1.定义类的保留字是_,定义接口的保留字是_。(分数:2.00)填空项 1:_2.Socket 通常也称为_,用于描述_和_。(分数:2.00)填空项 1:_3.线程的优先级在_至_之间,数值越大_。(分数:2.00)填空项 1:_4.构造方法是一种特殊的成员方法,构造方法名与 1 相同。(分数:2.00)填空项 1:_5.Java 语言只允许单继承,指每个类只能有一个 1。(分数:2.00)填空项 1:_6.Java 源程序的扩展名是_,经过编译后的程序的扩展名是
2、_。(分数:2.00)填空项 1:_7.在一个时间只能由一个线程访问的资源称为_。访问临界资源的代码_。(分数:2.00)填空项 1:_8.在多线程系统中,多个线程之间有_和_两种关系。(分数:2.00)填空项 1:_二、单项选择题(总题数:21,分数:42.00)9.关于选择结构下列哪个说法正确?_Aif 语句和 else 语句必须成对出现Bif 语句可以没有 else 语句对应Cswitch 结构中每个 case 语句中必须用 break 语句Dswitch 结构中必须有 default 语句(分数:2.00)A.B.C.D.10.while 循环和 dowhile 循环的区别是:_A没有
3、区别,这两个结构任何情况下效果一样Bwhile 循环比 dowhile 循环执行效率高Cwhile 循环是先循环后判断,所以循环体至少被执行一次Ddowhile 循环是先循环后判断,所以循环体至少被执行一次(分数:2.00)A.B.C.D.11.关于 for 循环和 while 循环的说法哪个正确?_Awhile 循环先判断后执行,for 循环先执行后判断。Bwhile 循环判断条件一般是程序结果,for 循环的判断条件一般是非程序结果C两种循环任何时候都不可以替换D两种循环结构中都必须有循环体,循环体不能为空(分数:2.00)A.B.C.D.12.下列修饰符中与访问控制无关的是_Apriva
4、te BpublicCprotected Dfinal(分数:2.00)A.B.C.D.13.void 的含义:_A方法没有返回值 B方法体为空C没有意义 D定义方法时必须使用(分数:2.00)A.B.C.D.14.return 语句:_A只能让方法返回数值 B方法都必须含有C方法中可以有多句 return D不能用来返回对象(分数:2.00)A.B.C.D.15.关于对象成员占用内存的说法哪个正确?_A同一个类的对象共用同一段内存B同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间C对象的方法不占用内存D以上都不对(分数:2.00)A.B.C.D.16.下列说法哪个正确?_A不需要
5、定义类,就能创建对象B对象中必须有属性和方法C属性可以是简单变量,也可以是一个对象D属性必须是简单变量(分数:2.00)A.B.C.D.17.下列说法哪个正确?_A一个程序可以包含多个源文件B一个源文件中只能有一个类C一个源文件中可以有多个公共类D一个源文件只能供一个程序使用(分数:2.00)A.B.C.D.18.关于方法 main()的说法哪个正确?_A方法 main()只能放在公共类中Bmain()的头定义可以根据情况任意更改C一个类中可以没有 main()方法D所有对象的创建都必须放在 main()方法中(分数:2.00)A.B.C.D.19.构造函数何时被调用?_A创建对象时 B类定义
6、时C使用对象的方法时 D使用对象的属性时(分数:2.00)A.B.C.D.20.抽象方法:_A可以有方法体B可以出现在非抽象类中C是没有方法体的方法D抽象类中的方法都是抽象方法(分数:2.00)A.B.C.D.21.关于继承的说法正确的是:_A子类将继承父类所有的属性和方法。B子类将继承父类的非私有属性和方法。C子类只继承父类 public 方法和属性D子类只继承父类的方法,而不继承属性(分数:2.00)A.B.C.D.22.关于构造函数的说法哪个正确? _A一个类只能有一个构造函数B一个类可以有多个不同名的构造函数C构造函数与类同名D构造函数必须自己定义,不能使用父类的构造函数(分数:2.0
7、0)A.B.C.D.23.this 和 super:_A都可以用在 main()方法中B都是指一个内存地址C不能用在 main()方法中D意义相同(分数:2.00)A.B.C.D.24.覆盖与重载的关系是_A覆盖只有发生在父类与子类之间,而重载可以发生在同一个类中B覆盖方法可以不同名,而重载方法必须同名Cfinal 修饰的方法可以被覆盖,但不能被重载D覆盖与重载是同一回事(分数:2.00)A.B.C.D.25.关于接口哪个正确?_A实现一个接口必须实现接口的所有方法B一个类只能实现一个接口C接口间不能有继承关系D接口和抽象类是同一回事(分数:2.00)A.B.C.D.26.异常包含下列哪些内容
8、?_A程序执行过程中遇到的事先没有预料到的情况B程序中的语法错误 C程序的编译错误D以上都是(分数:2.00)A.B.C.D.27.对于已经被定义过可能抛出异常的语句,在编程时:_A必须使用 try/catch 语句处理异常,或用 throws 将其抛出B如果程序错误,必须使用 try/catch 语句处理异常C可以置之不理D只能使用 try/catch 语句处理(分数:2.00)A.B.C.D.28.字符流与字节流的区别在于_A前者带有缓冲,后者没有B前者是块读写,后者是字节读写C二者没有区别,可以互换使用D每次读写的字节数不同(分数:2.00)A.B.C.D.29.下列流中哪个不属于字节流
9、_AFileInputStreamBBufferedInputStreamCFilterInputStream DInputStreamReader(分数:2.00)A.B.C.D.三、程序填空题(总题数:5,分数:42.00)30.public class Sumpublic static void main(String args)int j=10;System.out.println(“j is : “+j);calculate(j);System.out.println(“At last, j is : “+j);static void calculate (int j)for (in
10、t i = 0;i10;i+)j+;System.out.println(“j in calculate() is: “+j);输出结果为:j is : (1) j in calculate() is : (2)At last j is : (3)(分数:8.00)填空项 1:_31.按要求填空abstract class SuperAbstractvoid a()abstract void b();abstract int c(int i);interface AsSupervoid x();abstract class SubAbstract extends SuperAbstract i
11、mplements AsSuperpublic void b()abstract String f();public class InheritAbstract extends SubAbstractpublic void x()public int c(int i ) public String f()public static void main(String args)InheritAbstract instance=new InheritAbstract();instance.x();instance.a();instance.b();instance.c(100);System.ou
12、t.println(instance.f();在以上这段程序中:抽象类有:SuperAbstract 和 (1) (写出类名)非抽象类有: (2) (写出类名)接口有: (3) (写出接口名)AsSuper 中的 x()方法是(4)方法,所以在 InheritAbstract 中必须对它进行(5)(分数:8.00)填空项 1:_32.按注释完成程序public class Leaf private int i = 0; /此属性值用于检验Leaf increment() /定义方法 increment(),返回值是 Leaf 类的对象i+;return (1) ;/将当前对象的地址作为返回值返
13、回void print() System.out.println(“ i = “ + i);public static void main(String args)Leaf x = (2); /创建 Leaf 类的对象 xx.increment().increment().increment().print();/多次调用方法 increment(),返回的都是 x 的地址,i 值表示调用次数输出结果为 i = (3)(分数:8.00)填空项 1:_33.按注释提示完成文件复制的程序/FileStream 源代码如下:import java.io.*;class FileStream publ
14、ic static void main(String args ) try File inFile = new File(“file1.txt“); /指定源文件File outFile = new File(“file2.txt“); /指定目标文件FileInputStream fis =(1);FileOutputStream fos = new FileOutputStream(outFile);int c; /逐字节从源文件中输入,再输出到 fos 流while (c = fis.read ()!=-1)(2);fis.close(); fos.close();catch (Exce
15、ption e) System.out.println(“FileStreamsTest: “+e);(分数:10.00)填空项 1:_34.阅读程序,给出结果:/ AbstractClassDemo.java 源代码如下:abstract class Shape /定义抽象类 Shape 和抽象方法 displayabstract void display();class Circle extends Shape void display() /实现抽象类的方法System.out.println(“Circle“);class Rectangle extends Shape void di
16、splay() /实现抽象类的方法 System.out.println(“Rectangle“);class Triangle extends Shape void display() /实现抽象类的方法System.out.println(“Triangle“);public class AbstractClassDemopublic static void main(String args)(new Circle().display(); /定义无名对象来调用对应的 display 方法(new Rectangle().display();(new Triangle().display(
17、);输出结果是 ?(分数:8.00)填空项 1:_计算机 Java 认证-1 (1)答案解析(总分:100.00,做题时间:90 分钟)一、填空题(总题数:8,分数:16.00)1.定义类的保留字是_,定义接口的保留字是_。(分数:2.00)填空项 1:_ (正确答案:class interface)解析:2.Socket 通常也称为_,用于描述_和_。(分数:2.00)填空项 1:_ (正确答案:套接字 IP 地址 端口)解析:3.线程的优先级在_至_之间,数值越大_。(分数:2.00)填空项 1:_ (正确答案:1 10 任务越紧急)解析:4.构造方法是一种特殊的成员方法,构造方法名与 1
18、 相同。(分数:2.00)填空项 1:_ (正确答案:类名)解析:5.Java 语言只允许单继承,指每个类只能有一个 1。(分数:2.00)填空项 1:_ (正确答案:父类)解析:6.Java 源程序的扩展名是_,经过编译后的程序的扩展名是_。(分数:2.00)填空项 1:_ (正确答案:java .class)解析:7.在一个时间只能由一个线程访问的资源称为_。访问临界资源的代码_。(分数:2.00)填空项 1:_ (正确答案:临界资源 临界代码)解析:8.在多线程系统中,多个线程之间有_和_两种关系。(分数:2.00)填空项 1:_ (正确答案:同步 互斥)解析:二、单项选择题(总题数:2
19、1,分数:42.00)9.关于选择结构下列哪个说法正确?_Aif 语句和 else 语句必须成对出现Bif 语句可以没有 else 语句对应Cswitch 结构中每个 case 语句中必须用 break 语句Dswitch 结构中必须有 default 语句(分数:2.00)A.B. C.D.解析:10.while 循环和 dowhile 循环的区别是:_A没有区别,这两个结构任何情况下效果一样Bwhile 循环比 dowhile 循环执行效率高Cwhile 循环是先循环后判断,所以循环体至少被执行一次Ddowhile 循环是先循环后判断,所以循环体至少被执行一次(分数:2.00)A.B.C.
20、D. 解析:11.关于 for 循环和 while 循环的说法哪个正确?_Awhile 循环先判断后执行,for 循环先执行后判断。Bwhile 循环判断条件一般是程序结果,for 循环的判断条件一般是非程序结果C两种循环任何时候都不可以替换D两种循环结构中都必须有循环体,循环体不能为空(分数:2.00)A.B. C.D.解析:12.下列修饰符中与访问控制无关的是_Aprivate BpublicCprotected Dfinal(分数:2.00)A.B.C.D. 解析:13.void 的含义:_A方法没有返回值 B方法体为空C没有意义 D定义方法时必须使用(分数:2.00)A. B.C.D.
21、解析:14.return 语句:_A只能让方法返回数值 B方法都必须含有C方法中可以有多句 return D不能用来返回对象(分数:2.00)A.B.C. D.解析:15.关于对象成员占用内存的说法哪个正确?_A同一个类的对象共用同一段内存B同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间C对象的方法不占用内存D以上都不对(分数:2.00)A.B. C.D.解析:16.下列说法哪个正确?_A不需要定义类,就能创建对象B对象中必须有属性和方法C属性可以是简单变量,也可以是一个对象D属性必须是简单变量(分数:2.00)A.B.C. D.解析:17.下列说法哪个正确?_A一个程序可以包含
22、多个源文件B一个源文件中只能有一个类C一个源文件中可以有多个公共类D一个源文件只能供一个程序使用(分数:2.00)A. B.C.D.解析:18.关于方法 main()的说法哪个正确?_A方法 main()只能放在公共类中Bmain()的头定义可以根据情况任意更改C一个类中可以没有 main()方法D所有对象的创建都必须放在 main()方法中(分数:2.00)A.B.C. D.解析:19.构造函数何时被调用?_A创建对象时 B类定义时C使用对象的方法时 D使用对象的属性时(分数:2.00)A. B.C.D.解析:20.抽象方法:_A可以有方法体B可以出现在非抽象类中C是没有方法体的方法D抽象类
23、中的方法都是抽象方法(分数:2.00)A.B.C. D.解析:21.关于继承的说法正确的是:_A子类将继承父类所有的属性和方法。B子类将继承父类的非私有属性和方法。C子类只继承父类 public 方法和属性D子类只继承父类的方法,而不继承属性(分数:2.00)A.B. C.D.解析:22.关于构造函数的说法哪个正确? _A一个类只能有一个构造函数B一个类可以有多个不同名的构造函数C构造函数与类同名D构造函数必须自己定义,不能使用父类的构造函数(分数:2.00)A.B.C. D.解析:23.this 和 super:_A都可以用在 main()方法中B都是指一个内存地址C不能用在 main()方
24、法中D意义相同(分数:2.00)A.B.C. D.解析:24.覆盖与重载的关系是_A覆盖只有发生在父类与子类之间,而重载可以发生在同一个类中B覆盖方法可以不同名,而重载方法必须同名Cfinal 修饰的方法可以被覆盖,但不能被重载D覆盖与重载是同一回事(分数:2.00)A. B.C.D.解析:25.关于接口哪个正确?_A实现一个接口必须实现接口的所有方法B一个类只能实现一个接口C接口间不能有继承关系D接口和抽象类是同一回事(分数:2.00)A. B.C.D.解析:26.异常包含下列哪些内容?_A程序执行过程中遇到的事先没有预料到的情况B程序中的语法错误 C程序的编译错误D以上都是(分数:2.00
25、)A. B.C.D.解析:27.对于已经被定义过可能抛出异常的语句,在编程时:_A必须使用 try/catch 语句处理异常,或用 throws 将其抛出B如果程序错误,必须使用 try/catch 语句处理异常C可以置之不理D只能使用 try/catch 语句处理(分数:2.00)A. B.C.D.解析:28.字符流与字节流的区别在于_A前者带有缓冲,后者没有B前者是块读写,后者是字节读写C二者没有区别,可以互换使用D每次读写的字节数不同(分数:2.00)A.B.C.D. 解析:29.下列流中哪个不属于字节流_AFileInputStreamBBufferedInputStreamCFilt
26、erInputStream DInputStreamReader(分数:2.00)A.B.C.D. 解析:三、程序填空题(总题数:5,分数:42.00)30.public class Sumpublic static void main(String args)int j=10;System.out.println(“j is : “+j);calculate(j);System.out.println(“At last, j is : “+j);static void calculate (int j)for (int i = 0;i10;i+)j+;System.out.println(“
27、j in calculate() is: “+j);输出结果为:j is : (1) j in calculate() is : (2)At last j is : (3)(分数:8.00)填空项 1:_ (正确答案:(1)10; (2) 20; (3) 10。)解析:31.按要求填空abstract class SuperAbstractvoid a()abstract void b();abstract int c(int i);interface AsSupervoid x();abstract class SubAbstract extends SuperAbstract implem
28、ents AsSuperpublic void b()abstract String f();public class InheritAbstract extends SubAbstractpublic void x()public int c(int i ) public String f()public static void main(String args)InheritAbstract instance=new InheritAbstract();instance.x();instance.a();instance.b();instance.c(100);System.out.pri
29、ntln(instance.f();在以上这段程序中:抽象类有:SuperAbstract 和 (1) (写出类名)非抽象类有: (2) (写出类名)接口有: (3) (写出接口名)AsSuper 中的 x()方法是(4)方法,所以在 InheritAbstract 中必须对它进行(5)(分数:8.00)填空项 1:_ (正确答案:(1)SuperAbstract;(2) InheritAbstract;(3) AsSuper;(4) 抽象;(5) 覆盖和实现。)解析:32.按注释完成程序public class Leaf private int i = 0; /此属性值用于检验Leaf in
30、crement() /定义方法 increment(),返回值是 Leaf 类的对象i+;return (1) ;/将当前对象的地址作为返回值返回void print() System.out.println(“ i = “ + i);public static void main(String args)Leaf x = (2); /创建 Leaf 类的对象 xx.increment().increment().increment().print();/多次调用方法 increment(),返回的都是 x 的地址,i 值表示调用次数输出结果为 i = (3)(分数:8.00)填空项 1:_
31、(正确答案:(1)this;(2)new Leaf();(3)3)解析:33.按注释提示完成文件复制的程序/FileStream 源代码如下:import java.io.*;class FileStream public static void main(String args ) try File inFile = new File(“file1.txt“); /指定源文件File outFile = new File(“file2.txt“); /指定目标文件FileInputStream fis =(1);FileOutputStream fos = new FileOutputStr
32、eam(outFile);int c; /逐字节从源文件中输入,再输出到 fos 流while (c = fis.read ()!=-1)(2);fis.close(); fos.close();catch (Exception e) System.out.println(“FileStreamsTest: “+e);(分数:10.00)填空项 1:_ (正确答案:(1)new FileInputStream(inFile);(2) fos.write(c);)解析:34.阅读程序,给出结果:/ AbstractClassDemo.java 源代码如下:abstract class Shape
33、 /定义抽象类 Shape 和抽象方法 displayabstract void display();class Circle extends Shape void display() /实现抽象类的方法System.out.println(“Circle“);class Rectangle extends Shape void display() /实现抽象类的方法 System.out.println(“Rectangle“);class Triangle extends Shape void display() /实现抽象类的方法System.out.println(“Triangle“);public class AbstractClassDemopublic static void main(String args)(new Circle().display(); /定义无名对象来调用对应的 display 方法(new Rectangle().display();(new Triangle().display();输出结果是 ?(分数:8.00)填空项 1:_ (正确答案:(1) Circle; (2) Rectangle; (3) Triangle。)解析: