Java复习题2及答案

更新时间:2024-01-19 20:28:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1、已知有一个多线程类myThread,除run方法外还包含一个方法void disp()。以下说法正确的是【 】

A) myThread mt=new myThread(); mt.start();mt.disp();运行完线程体run方法后再运行disp()方法

B) myThread mt=new myThread();mt.disp();mt.start();运行完disp()后才能启动线程体run

C) myThread mt=new myThread();mt.start();mt.disp();线程体run一定会在disp结束前结束。

D) myThread mt=new myThread();mt.start();mt.disp();mt.start()和mt.disp()两条命令,哪条放在前面哪条放在后面运行结果一样。

2、下列选项中关于java中super关键字的说法错误的是(B) A)super关键字是在子类对象内部指代其父类对象的引用

B)super关键字不仅可以指代子类的直接父类,还可以指代父类的父类 C)子类可以通过super关键字调用父类的方法 D)子类可以通过super关键字调用父类的属性

3、 下列选项中关于java中this关键字的说法错误的是(B) A)this是在对象内部指代对象自身的引用 B)this关键字可以在类中的任何位置使用 C)this只和特定的对象关联,而不和类关联 D)同一个类中的不同对象有不同的this

4、 在以下java程序的方法中,两个方法之间属于方法重载的是(AC)。(选择二项) A)int f1(){}

Int f1(int a){} B) void f1(int a){} Int f1(int a){} C)void f1(){}

Int f1(int a){} D) int f1(int b){}

int f1(int a){}

5、分析下面java代码,编译运行结果是(C)。 Public class Test{ Int number;

String strname;

Test(int num,String name){ Number=num; Strname=name;

System.out.println(“学号:”+number+”姓名:”+name); }

Public static void main(String[] args){

Test objTest1 = new Test();

Test objTest2 = new Test(1,“张三”); }

}

a) 运行结果为:

学号:1姓名:张三 b) 运行结果为:

学号:null姓名:null 学号:1姓名:张三 c) 程序出现编译错误 d) 程序出现运行时异常

6、Java中使用interface声明一个接口时,只可以使用(D)修饰符修饰该接口。(选择一项)

A private B protected

C private protected D public

7、分析下面的Java程序,编译运行结果为(D) Public class Test{

Public static void main(String [] args){

try{

throw new NullPointerException();

}catch(Exception e){

System.out.println(“throwException”); }

}

}(选择一项) A 编译出错

B 正常运行无输出结果 C 运行出错

D 输出:throwException

8、 Java中,在如下所示的Test类中,共有(C)个构造方法 public class Test{ private int x; public Test(){

x=34; }

public void Test(double f){

this.x =(int)f; }

public Test(String s){

}

}(选择一项) A 0 B 1 C 2 D 3

9、 分析下面的Java代码段,则选项中(B)方法无法在Child类中定义。 public class Parent{

public int addValue(int a ,int b){ return a+b; } }

class Child extends Parent{ //在此处定义方法 }(选择一项)

A public int addValue(int a, int b){ return a + b;

}

B public int addValue(int a, int b){} C public int addValue(int a){ return a ;

}

D public int addValue(double a, double b){ return (int)a + (int)b;

}

10、小张使用JAVA编写了一个类,如下所示,选项中可以作为它的构造方法的是()。 public class Orange{}(选择二项) A、void Orange(){}

B、Orange(String name){} C、Orange(){} 11、在JAVA的异常处理模型中,下列类在多重catch中同时使用时,()应该最后列出。(选择一项)

A、ArithmeticException B、NullPointerException C、IOException D、Exception

12、在Java 接口中,下列选项中属于有效的方法声明是()。(选择二项) A、public void aMethod() B、void aMethod(); C、void aMethod(){}

D、private void aMethod();

13、建立文件 \的字节输入流的语句是:( ) A. InputStream in=new FileInputStream(\

B. FileInputStream in=new FileInputStream(new File(\ C. InputStream in=new FileReader(\

14、给定如下Java程序,这段程序编译运行后的输出结果是()。(选择一项) public class Test{

public static void aMethod() throws Exception{ try{

throw new Exception(); }finally{

System.out.print(“Finally”); } }

public static void main(String[] args){ try{

aMthod();

}catch(Excption e){

System.out.print(“Exception”); }

System.out.print(“Finished”); } }

A、Finally Exception B、Finally

C、Exception Finally Finished D、Finally Exception Finished

15、Java中,如果类C是B的子类,类B是类A的子类,那么下面描述正确的是() (选择一项)

a) C不仅继承了B中公有成员,同时也继承了A中的公有成员 b) C只继承了B中的成员 c) C只继承了A中的成员 d) C不能继承A或B中的成员

16、下面关于Java接口的说法错误的是()。(选择一项) a)一个Java接口是一些方法特征的集合,但没有方法的实现

b)Java接口中定义的方法在不同的地方被实现,可以具有完全不同的行为 c)Java接口中可以声明私有成员 d)Java接口不能被实例化

17、下面语句正确的是:( )

A. RandomAccessFile raf=new RandomAccesssFile(“myfile.txt”,”rw”); B. RandomAccessFile raf=new RandomAccesssFile(new DataInputStream()); C. RandomAccessFile raf=new RandomAccesssFile(“myfile.txt”);

D. RandomAccessFile raf=new RandomAccesssFile(new File(“myfile.txt”));

18、在Java中,类Test的代码如下所示,假设类Test的实例化对象名为t,则选项()中的语句能正确调用Test类的方法。 Class Test {

public int change()

{

System.out.println(“No parameters”); return 0; }

public void change(double m) {

System.out.println(“parameter is:”+m); }

}

(选择一项)

a) Test.change(15.2f) b) Test.change(); c) t.change(250.5);

d) int a = t.change(13)

19、有类Copy编译后产生如下错误提示,需要修改的地方是【 】 import java.io.*;

运行时提示错误为:

Copy.java:11:可能损失精度

public class Copy {

public static void main(String[] args) throws Exception {

File inputFile = new File(\ File outputFile = new File(\

FileReader in = new FileReader(inputFile); ① FileWriter out = new FileWriter(outputFile); char c; ②

while ((c = in.read()) != -1) ③ out.write(c); ④ in.close();

本文来源:https://www.bwwdw.com/article/9nwo.html

Top