西北工业大学计算机学院 java考试试题.doc_第1页
西北工业大学计算机学院 java考试试题.doc_第2页
西北工业大学计算机学院 java考试试题.doc_第3页
西北工业大学计算机学院 java考试试题.doc_第4页
西北工业大学计算机学院 java考试试题.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、西北工业大学java课程考试试卷说明:1.所有题目做在答卷纸上 2。考试完毕后连考卷一起交上一、选择(共25题,每题1分,共25分)1. 以下标识符中哪项是不合法的( d )。A. price_per_mB. SalaryC. myVarD. class2. 设原来变量a和n的值分别为7和2,则表达式a+=n-2的结果是( d )。A. 1B. 2C。 9D. 73. Java语言使用的字符集是( c )。A. ASCIIB。 Latin-1C。 UnicodeD。 ISOLatin4。 设x = 2, 则表达式( x+)/3的值是( b )。A。 2B. 0C. 1D. 35下面的语句( d

2、 )是正确的。A. char c = abc;B.char cr = 12;C. float f = 0.23;D。int i = 2;6一个Java字节码文件必须以( b p9 )为其扩展名。A。 javaB。 classC。 htmlD. exe7switch后面的表达式的类型不可以是( c p37 )。A。 byteB. charC。 longD。 short8不允许作为类成员的访问控制符的是( d )。A. publicB. privateC。 protectedD。 static9执行代码String s; 后,正确的结论是以下的选项( b )。A. s为”(空串)B. s为null

3、C。 s为"s”D. s为010为AB类的一个无形式参数、无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,那么该方法的定义形式为( c )。A。 final void method ( )B. public void method ( )C. static void method ( )D. abstract void method ( )11在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同。这种特性称为( c )。AJava不支持此特性B。 方法的改写C. 方法的名复用D. 方法的隐藏12。

4、 在方法的改写(override)中,如果超类中的方法被说明为protected,子类中可以重新说明为: ( a ).A。 public或protectedB. private或protectedC. public或privateD。 ABC均正确13若在某个类中定义了方法:abstract void method( );那么该方法属于( d )。A最终方法B. 本地方法C。 同步方法D。 抽象方法14在某个类中仅说明了一个含有形参的构造器,其子类构造器的设计应该:( c )。A。 子类无需设计构造器,而用缺省构造器。B。 子类必须设计不含形参的构造器。C。 子类的构造器中第一条语句应以sup

5、er(实参)调用超类构造器。D。 子类的构造器中可用缺省方式调用超类构造器。15下面关于类及其修饰符的一些描述,正确的是( d ).A. abstract类可以用来派生子类,也可以用来创建abstract类的对象.B. final类不但可以用来派生子类,也可以用来创建final类的对象.C。 abstract能与final同时修饰一个类。D. abstract方法必须在abstract类中声明,但abstract类定义中可以没有abstract方法。16类Test1定义如下:1public class Test12public float aMethod(float a,float b) 34

6、将以下( b )方法插入标号为3的行是不合法的。A。 public float aMethod(float a, float b,float c) B。 public float aMethod(float c,float d) C. public int aMethod(int a, int b) D。 private float aMethod(int a,int b,int c) 17在Java语言中,说法( c )是正确的。A一个子类可以有多个父类,一个父类也可以有多个子类B一个子类可以有多个父类,但一个父类只可以有一个子类C一个子类只可以有一个父类,但一个父类可以有多个子类D上述说法

7、都不对18。 下面说法正确的是( b ).A. 每个try代码块都必须至少有一个catch块和它对应,如果一个try块有多个catch块与之对应,应该将参数为父类异常对象的catch块排在前面。B。 如果程序运行到try块中时,某个语句产生了异常,则程序流程将跳过try块后面的语句,直接进入catch块中。C。 如果catch块后还有一个finally块,程序在运行时,一旦进入catch块后,就不会再进入finally块,只有不产生异常时才跳过catch块进入finally块中运行。D。 catch语句可以是多个。catch语句中的异常类型不必是Throwable类的子类。19。在使用inte

8、rface声明一个接口时,只可以使用( d )修饰符修饰该接口。A。 protectedB。 private protectedC。 privateD。 public20.创建一个新的线程对象后,通过使用( a )方法就可以启动该线程。A。 start( )B. set( )C. main( )D. run( )21设有下面的一段代码:public class Person static int arr = new int10;public static void main(String a ) System.out.println(arr1); 对类Person进行编译、解释运行的结果是:(

9、 c )。A。 编译时报错B. 编译时正确,运行时报错C。 程序通过编译,解释运行结果为输出0D。 程序通过编译,解释运行结果为没有任何输出22。下面程序代码的运行结果是( b ). class Exercise_1 public static void main(String args) for(int i = 0; i 3; i+) if(i 2) break; System.out.println(i + "t”); System。out。println("i = " + i);A。 i = 0B。 编译出错C. 无限循环D。 223。下面程序代码的运行结果

10、是( c )。class StringETpublic static void main(String args)String s1=”abc”+”def"String s2=new String(s1);if(s1=s2) /booleanSystem.out.println("= succeeded");if(s1.equals(s2))System。out.println(”.equals() succeeded”);A. 没有任何输出B. 输出 = succeededC。 输出 。equals() succeededD。 输出 = succeeded。eq

11、uals() succeeded24. 对于接口,下列叙述错误的是(d ):A。 接口是一种完全没有实现的类B。 在接口中只包含常量和方法的定义,没有方法的实现C. Java提供一种特别类型“接口"(interface)来实现多重继承D。 一个类最多只能实现一个接口25。 已知类ArrayList实现了List接口,欲创建ArrayList类的一个对象,下列哪个方法是正确的( b ).A。 ArrayList myList = new Object();B. List mList = new ArrayList ();C。 ArrayList myList = new List();

12、D。 List myList = new List();二、填空题(每空1分,共20分)1. 接口是一种由_常量_和_抽象方法_组成的类型。2. 在Java中创建有名常量是用_static_和_final_来说明一个变量.3. 若x = 5, y = 10,则 x y 和 x = y的逻辑值分别为_true_和_false_.4. Java中有两种多态,一种是使用方法的_名复写_实现多态,另一种是使用方法的_改写_实现多态.5. 一个Java源程序文件名为MyJavaApp.java,如果使用Sun公司的Java开发工具JDK编译该源程序文件,并使用其虚拟机运算这个程序的字节码文件,应该顺序执

13、行如下两个命令:_javac MyJavaApp.java_java MyJavaApp.class_。6. Java中类成员的访问控制符有以下几种:private, public, _protected_, _缺省_。 其中_public_是类成员的缺省访问控制符.7. 如果在子类中说明了一个与超类相同名字的域,超类的那个域仍然存在,但不能用其名直接访问,这种特性称为域的_隐藏_.8. Java异常有两种:检测性异常和非检测性异常.所谓检测性异常就是编译器要检测以确保该方法只引发自己所说明的一种异常。标准的RuntimeException类和Error类属于上述两种异常中的_非检测性异常_异

14、常。9. 线程的创建方式有两种,一种是扩展_thread类_,一种是实现_throwable类_。10. 如果有一个类MyFrame是Frame的子类,能够被不同包中的类所使用,同时又能够为线程提供运行代码(run()方法),请写出该类的声明头_ public class MyFrame extends Frame implements Throwable。11. Java中的_string_类用于处理字符串常量,而_stringBuffer_类用于处理字符串变量。三、概念解释 (共4题,每题3分,共12分)1。 方法的改写(1)方法的改写:子类中用相同的基调替代超类中某方法的实现。2。 异常

15、(2)异常:提供了一种能检测错误且不会使程序代码变得凌乱的清晰方式。3。 抽象类(3)抽象类:是其中仅定义了部分实现的类,而留待扩展类去提供这些方法的部分或全部的具体实现。抽象类不能直接实例化对象,抽象类需用abstract关键字修饰.4。 类和接口之间的关系(4) 类和接口之间的关系:一个类可以实现多个接口,对接口中每个方法都给出具体实现;一个接口可以被多个类所实现;一个接口说明了一种类型,可用接口类型来说明引用变量的类型。该类型的引用变量可指向实现该接口的任一类的对象。所以可通过接口来调用不同类的相同方法。 四、写出下列程序完成的功能(共2题,每题4分,共8分)1. public clas

16、s Sum public static void main( String args ) double sum = 0.0 ; for ( int i = 1 ; i <= 100 ; i + + ) sum += 1.0/(double) i ; System.out。println( "sum="+sum ); /1/1+1/2+1/3.+1/1002。 class CMaxint a=3,4,6,7,8,8,7,9,5,2,21,54,26,89,45,34,87,54,67,23;int row = 0, col = 0, value = a00;void f

17、ind()for(int i = 0; i a.length; i+)for(int j = 0; j a0.length; j+)if(aij > value) value = aij;row = i;col = j;System。out。println(”value=” + value + " row = " + row + ” colum = ” + col);public static void main(String args)CMax cm = new CMax();cm。find(); /数组最大值五、写出下面程序的运行结果(共2题,每题5分,共10分)

18、1public class Test extends TT public static void main(String args) Test t = new Test("Tom”); public Test(String s) super(s); System。out.println(”How do you do?”);public Test() this(”I am Tom”); class TT public TT()System.out。println(”What a pleasure!"); public TT(String s)this();System.out

19、。println("I am ”+s); 2. interface MyInterfacevoid Fun();class MyClass1 implements MyInterfacepublic void Fun()System。out.println(”调用MyClass1中的方法Fun!"); class MyClass2 implements MyInterfacepublic void Fun()System。out.println("调用MyClass2中的方法Fun!”); public class MyClass3public void Call

20、FunOfClass(MyInterface If)If.Fun();public static void main(String args)MyInterface f;MyClass1 Obj1=new MyClass1();MyClass2 Obj2=new MyClass2();f=Obj1;f。Fun();f=Obj2;f。Fun();MyClass3 Obj3=new MyClass3 ();Obj3.CallFunOfClass(Obj1);Obj3。CallFunOfClass(Obj2);六、改错(5分)下面程序中编译错误的原因是_ _ _ _ _。abstract class

21、 MineBase abstract void amethod(); static int i; public class Mine extends MineBasepublic static void main(String argy )int ar = new int5;for(i = 0;i ar.length;i+)System.out。println(ari);七、综合设计(写在答题纸上并注明题号)(20分)为某船运公司设计一个集装箱运输管理软件,依次完成下面设计:1 每个集装箱有唯一的注册号regNumber、重量weight(吨)、货物描述description。编写一个Cont

22、ainer类,包含一组私有域、一组访问方法、一个有参量构造器、一个toString()方法将属性描述为字符串.2 危险品箱是一种特殊的集装箱,每个危险品箱须确定一个危险级别(hazadousLevel,可以是1、2、3等).编写一个DangerousContainer类,包含私有域、访问方法、一个有参量构造器、一个toString()方法将属性描述为字符串。3 每条船有一个船名name,最大载重量maxLadenWeight(吨),可加载若干集装箱,集装箱的总重量不能超过该船的最大载重量.编写一个Ship类,包含一组私有域、一组访问方法、一个有参量构造器、一个toString()方法将该船的属

23、性和所加载的集装箱信息描述为字符串。另外设计:方法boolean load(Container cnt):加载一个集装箱cnt到船上,若返回true,则表示未超重且成功加载;若返回false,则表示因超重而加载失败。方法boolean unload(String regNumber):按注册号regNumber卸载一个集装箱。若找到该集装箱且卸载,则返回true;若未能找到该集装箱而卸载失败,则返回false。可根据设计需要增加方法。参考类库如下:java。util。ArrayList表示一个数组列表对象。构造器:public ArrayList()构建一个空的数组列表对象。方法:public

24、 boolean add(Object o)把指定对象o加入列表尾部。方法:public Object get(int index) 返回数组列表中index位置上的对象。方法:public Object remove(int index) 撤销数组列表中index位置上的对象并返回。方法:public int size()返回数组列表中已加入的元素个数。java6答 案一、选择(共25题,每题1分,共25分)1 10 D D C B D B C D B C 1120 C A D C D B C B D A2125 C B C D B二、填空题(每空1分,共20分

25、)1. 常量 抽象方法2. static final3. true false4. 名复用 改写5. javac MyJavaApp.java java MyJavaApp6. protected package package7. 隐藏 8. 非检测性异常9. Thread类 Throwable接口10. public class MyFrame extends Frame implements Throwable11. String StringBuffer三、名词解释 (共4题,每题3分,共12分)(1)方法的改写:子类中用相同的基调替代超类中某方法的实现.(2)异常:提供了一种能检测错

26、误且不会使程序代码变得凌乱的清晰方式.(3)抽象类:是其中仅定义了部分实现的类,而留待扩展类去提供这些方法的部分或全部的具体实现。抽象类不能直接实例化对象,抽象类需用abstract关键字修饰。(4) 类和接口之间的关系:一个类可以实现多个接口,对接口中每个方法都给出具体实现;一个接口可以被多个类所实现;一个接口说明了一种类型,可用接口类型来说明引用变量的类型.该类型的引用变量可指向实现该接口的任一类的对象。所以可通过接口来调用不同类的相同方法。四、写出下列程序完成的功能(共2题,每题4分,共8分)(1) 实现求解1.0/1。0+1.0/2.0+1。0/3.0+.。+1.0/100。0,并输出

27、结果。(2) 求解给定4×5矩阵中所有元素的最大值,并输出该最大值以及其所在的行号和列号。五、写出下面程序的运行结果(共2题,每题5分,共10分)(1) What a pleasure!I am TomHow do you do? (2) 调用MyClass1中的方法Fun!调用MyClass2中的方法Fun!调用MyClass1中的方法Fun!调用MyClass2中的方法Fun!六、改错(5分)类Mine应该被声明为abstract类,因为它没有实现抽象方法amethod( )。七、综合设计(写在答题纸上并注明题号)(20分)public class Container /(6分)

28、private String regNumber;private int weight;public String description;public Container(String regNumber,int weight,String description)this.regNumber=regNumber;this。weight=weight;this.description = description;public String getRegNumber()return regNumber;public int getWeight()return weight;public Str

29、ing toString()return "RegNumber:"+regNumber+" Weight:”+weight + ” Desc:"+description;class DangerousContainer extends Container /(6分)private int hazadousLevel;public DangerousContainer(String regNumber,int weight,String description,int hazadousLevel)super(regNumber,weight,description);this。hazadousLevel=hazadousLevel;public int getHazadousLevel()return hazadousLevel;public String toString()return super.toString()+”rnHazadous Level:"+hazadousLevel;import java。util.*; /(8分)class Shippriv

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论