您的当前位置:首页正文

辽宁大学2013java程序设计B

2022-08-20 来源:客趣旅游网
辽 宁 大 学

2012~2013学年第二学期硕士研究生考试试题

专 业: 软件工程和计算机技术 年 级: 2012 考试科目: Java程序设计(B)卷 课程类别: 专业课

一、判断题(每题1分,共10分,对的在括号内打∨,错的在括号内打×) 1、在java中一个类可以实现多个接口。( )

2、抽象类不可以包括非抽象方法。( )

3、如果类要求它的某个属性不能被外部类直接访问,应使用private修饰。( ) 4、泛型实质上就是使程序员定义安全的类型。( )

5、java的源程序经编译后可以直接在机器上运行,无需解释执行。( ) 6、在同一个类中,同名的方法,被编写多次,这属于多态的范畴。( ) 7、一个枚举类型成员不可以看作是枚举类型的一个实例。( ) 8、每个进程都有它自己的变量,而线程则共享相同的数据。( ) 9、FlowLayout布局将容器分为5个区。( ) 10、java.io包包含了标准的输入、输出类。( )

二、填空题(每空1分,共20分)

1、java源文件经编译后生成( )扩展名的文件。 2、java中,char类型的位长为( )。

3、java中线程体是由线程类的( )方法来定义的。

4、定义一个数组a,类型是整型,长度是20:( )。 5、创建菜单,首先要创建( )。

6、使用类FileInputStream的read方法会抛出( )异常。

第( 1 )页 共( 6 )页

7、抽象类不能用它来实例化一个对象,它只能被( )。 8、( )说明的类称为终极类。

9、在java中,常使用( )对象为文本区提供滚动条功能。

10、利用( )能显示多项可选项,用户可以从中选择一个或多个对象。 11、在java线程中,共享数据的所有访问都必须作为临界区,使用( ) 进行加锁控制。

12、( )类不包含标题栏或边界,它是Applet的父类。 13、在java中只允许( )继承。

14、( )是java提供的一种区别类名空间的机制。 15、将java程序中的对象保存在外存中,称为( )。 16、java Applet程序必须在( )下运行。

17、java中处理异常时,( )将抛出一个异常类的对象。 18、String str=”helloworld”;String s=str.substring(1,4);s的值( 19、在java语言中,用( )和continue控制循环的流程。 20、Swing中用来表示表格的类是javax.swing. ( )。

三、简答题(每题5分,共20分)

1、什么叫方法重载?什么叫方法覆盖?

2、java中,创建线程有哪两种方法?并回答线程的四个基本状态? 3、叙述Java Applet生命周期中的四个方法? 4、Java socket的通信基本步骤?

四、程序分析题(每题5分,共10分)

1、class MyException extends Exception{ private int detail; MyException(int a){ detail = a; }

public String toString(){return \"MyException[\"+detail+\"]\"; } }

第( 2 )页 共( 6 )页

。 ) public class ExceptionDemo{

static void compute(int a) throws MyException{

System.out.println(\"Called compute(\"+a+\")\"); if (a>10) throw new MyException(a);

System.out.println(\"Normal exit\");

}

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

compute(1);compute(25); compute(30);

}catch(MyException e){ System.out.println(\"Exception caught \"+e.toString()); }

} }

给出上述程序的输出结果: 2、

import java.io.*; public class FilePrint{

public static void main(String[] args) throws IOException { byte ba[]={'a','b','c','d','e','f','\\r','\\n'}; byte bd[]={'1','2','3'}; byte bu[]={'A','B','C','D'};

FileOutputStream fos=new FileOutputStream(\"aaa.txt\"); OutputStream os=new BufferedOutputStream(fos,1024); try{os.write(ba,0,ba.length);os.write(bd,0,bd.length); os.write(bu,0,bu.length); }finally{os.close();} }//main

}

在不考虑异常的情况下,按行写出aaa.txt文件中的内容:

第( 3 )页 共( 6 )页

五、程序填空题(每空2分,共16分)

阅读下列说明和 Java 代码,将应填入 (n) 处的字句写在答题纸上。 1、现欲实现一个图像浏览系统,要求该系统能够显示 BMP、JPEG 和 GIF 三种格式的文件,并且能够在 Windows 和 Linux 两种操作系统上运行。系统首先将 BMP、JPEG 和 GIF三种格式的文件解析为像素矩阵,然后将像素矩阵显示在屏幕上。系统需具有较好的扩展性以支持新的文件格式和操作系统。为满足上述需求并减少所需生成的子类数目,采用桥接(Bridge)设计模式进行设计所得类图如下图所示。

采用该设计模式的原因在于:系统解析 BMP、GIF 与 JPEG 文件的代码仅与文件格式相关,而在屏幕上显示像素矩阵的代码则仅与操作系统相关。 class Matrix{ //各种格式的文件最终都被转化为像素矩阵 //此处代码省略 };

abstract class ImageImp{ public abstract void doPaint(Matrix m); //显示像素矩阵m };

class WinImp extends ImageImp{

public void doPaint(Matrix m){

/*调用windows系统的绘制函数绘制像素矩阵*/ } };

class LinuxImp extends ImageImp{

public void doPaint(Matrix m){

/*调用Linux系统的绘制函数绘制像素矩阵*/ } };

第( 4 )页 共( 6 )页

abstract class Image {

protected (1) imp; public void setImp(ImageImp imp){

(2) = imp; }

public abstract void parseFile(String fileName); }

class BMP extends Image{

public void parseFile(String fileName){

//此处解析BMP文件并获得一个像素矩阵对象m

(3) ;// 显示像素矩阵m } };

class GIF extends Image{ //此处代码省略 } class JPEG extends Image{ //此处代码省略 }; public class javaMain{

public static void main(String[] args){

//在windows操作系统上查看demo.bmp图像文件 Image image1 = (4) ;

ImageImp imageImp1 = (5) ; (6) ; image1.parseFile(\"demo.bmp\"); } }

2、在applet文本中显示“欢迎来到java考试”,将程序补充完整。 import java.applet.*;

import java.awt.Graphics;

public class Java_2 extends (7) { public void paint(Graphics g){ g. (8) (“欢迎来到java考试”); } }

第( 5 )页 共( 6 )页

六、编程题(每题8分,共24分)

1、编写一个MatrixTest类,其中定义一个整型二维数组(5行5列),要求数

组中的数据由键盘输入,最终能在屏幕上按行列显示数据,并能给出数组中的最大数(如果有多个最大数,显示一个即可),并给出其行号和列号。

2、编写一个Car类,包含这样两个属性:当前速度speed(整型)及车主的

姓名name(字符串型)包含一个show()方法可用来显示两个属性的值,包含一个构造器可以初始化两个属性,在main方法中定义两个Car类型的对象c,d并调用各自的方法。

3、设计一个窗口,窗口北区放一个单行文本域,中心区放一个多行文本区,

南区放四个按钮,标签分别为”Set”,”Copy”,”Clear”,”Exit”,当单击”Set”时,将北区单行文本域的内容设置为”Hello World!”, 当单击”Copy” 时, 将北区单行文本域的内容拷贝到中心区文本区,当单击”Clear” 时,将北区的单行文本域和中心区的文本区内容设置为空,当单击”Exit” 时,关闭窗口。

第( 6 )页 共( 6 )页

因篇幅问题不能全部显示,请点此查看更多更全内容