java期末复习题(解答) 下载本文

内容发布更新时间 : 2024/6/2 14:50:18星期一 下面是文章的全部内容请认真阅读。

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

methodA()’ }

catch(IOException) {

System.out.print(“你好”); Return; }

finally {

System.ou.println(“fine thanks”); } }

public static void methodA() throws IOException { throw new IOException(); } }

15、下列程序输出结果是: _____15.0__________ ______8.0_________ class A {

double f(double x,double y) { return x+y; } }

class B extends A {

double f(int x, int y) { return x*y; } }

public E {

public static void main(String[] args) { B b=new B();

System.out.println(b.f(3,5)); System.out.println(b.f(3.0,5.0)); } } 16、如果在定义类时,出于安全等方面的考虑,限定该类不能被其它类继承, 则在定义该类时加关键字 final 来修饰。

17、Java中的线程体是由线程类的 run() 方法进行定义的,线程运行也是从该方法开始执行。 18、若x = 5,y = 10,则x > y和x <= y的逻辑值分别为false和__true______ 19、用JDK编译Java源程序,使用的命令是___javac________,编译源文件得到字节码文件 。

20、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、___编译

________和 解释运行字节码。

21、在Java程序中定义的类有两种成员:_成员变量_____和成员方法 22、子类继承父类时所要使用的关键字是 __extends_______。 23、使用关键字___char___来定义字符变量。

三、判断题:

1、一个进程就是一个执行中的程序,所以进程共享系统的内存空间和资源。

( T )

2、内部类的外嵌类的成员变量在内部类中仍然有效。 ( T) 3、在接口定义中可以声明变量。 ( F) 4、类中的实例方法可以操作类变量,而类方法也可以操作实例变量。 ( F ) 5、内部类的类体中可以声明类变量和类方法。 ( F) 6、一个线程进入死亡状态后,调用isAlive()方法返回值是false。 ( T) 7、如果采用JDBC-ODBC方式连接数据库,程序代码中必须使用数据库的名 字才能与数据库建立连接。 ( F) 8、在定义类时,抽象类中的方法可以有代码。 ( T )

9、在Java语言中,允许一个类继承一个父类的内容,也允许继承多个父类

( F ) ( T ) ( F)

的内容。 11、在Java语言中,类的构造方法可以重载。 12、abstract类中只可以有abstract方法。

13、在Java语言中即支持一维数组,也支持多维数组。 ( T ) 14、在Java中不可以同时用final和abstract修饰一个方法。( T ) 15、Date类中的Date(long time)构造方法,time的单位是毫秒。( T) 16、Java语言是编译型语言。( T )

17、Java中,File类提供了描述文件和目录的方法。( T ) 18、Java可以通过接口机制支持多重继承。( T )

四、简答题:

1、什么叫接口的回调?

2、在多线程中,线程同步机制是什么?

3、什么叫方法的重载?构造方法可以重载吗? 4、在JDBC中事务处理步骤是怎样的?

5、java中异常(Exception)和错误(Error)有什么不同? 6、简述实例变量和类变量的区别。

五、程序题:

1、阅读下面程序 class Cry {

public void cry() {

System.out.println(“大家好“); } }

public E {

public static void main(String args[]) { Cry hello=new Cry() {

public void cry () {

System.out.println(“工作顺利”); } };

hello.cry(); } }

程序运行的输出结果是:

2、阅读下面程序

public class E {

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

methodA()’ }

catch(IOException) {

System.out.print(“你好”); Return; }

finally {

System.ou.println(“fine thanks”); } }

public static void methodA() throws IOException { throw new IOException(); } }

程序运行的输出结果是:

3、阅读下面程序: class A {

double f(double x,double y) { return x+y; } }

class B extends A {

double f(int x, int y) { return x*y; } }

public E {

public static void main(String[] args) { B b=new B();

System.out.println(b.f(3,5)); System.out.println(b.f(3.0,5.0)); } }

程序运行的输出结果是: ____________________

4、编写程序,创建一个Student类,在构造方法里面计算学生的平均成绩,由于无法确定是两门课还是三门课的平均成绩,所以提供两种不同版本的构造方法来创建Student类的对象。

1、阅读下面程序

public class E{

public static void main(String args[]){ String str=new String(“苹果“); modify(str);

System.out.println(str); }

public static void modify(String s) { s=s+”好吃”; } }

程序运行的输出结果是:

5、阅读下面程序

public class A {

double f(double x,double y) { return x+y;

}

static int g(int n) { Return n*n; } }

public class B extends A {

double f(double x,double y) { double m=super.f(x,y); return m+x*y; }

static int g(int n) { int m=A.g(n); return m+n; } }

public class E{

public static void main(String args[]){ B b=new B();

System.out.println(b.f(10.0,8.0)); System.out.println(b.g(3)); } }

程序运行的输出结果是: ____________________ 6、阅读下面程序

public class B { int x=100,y=200;

public void setX(int x) { x=x; }

public void setY(int y) { this.y=y; }

public int getSum() { return x+y; } }

public class A{

public static void main(String args[]){ B b=new B(); b.setX(-100); b.sety(-200);

System.out.println(”Sum=”+b.getSum()); }