《Java程序设计》课期末考试试卷-B(共7页).doc
精选优质文档-倾情为你奉上班级: 姓名: 学号:Java程序设计课期末考试试卷(B卷)(注意:请将答案写到答题纸上,否则无效;答题纸与试卷分开上交)一、判断正误,正确打“”,错误打“×”(每题1分,共10分)1、Java允许创建不规则数组,即Java多维数组中各行的列数可以不同。2、子类可以继承父类的私有成员。3、对于类变量,可以通过类名直接访问,也可以通过该类的对象访问。4、一个抽象的类不能直接用new命令创建对象。5、一个子类中可以定义与父类中名字相同,而参数不同的方法,此时子类的方法会改写从父类继承来的方法。6、如果一个类中包含抽象方法,则这个类也必须定义为抽象类。7、构造方法的名字必须与类名相同。8、一个类的私有变量可以在同一个包的不同类中使用。9、final类不能派生子类,final方法不能被覆盖。10、Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。二、单项选选题(每题1分,共20分)1、若在某一个类定义中定义有如下的方法: final void aFinalFunction( );则该方法属于?A、本地方法 B、解态方法 C、最终方法 D、抽象方法2、以下哪个不是java的关键字?A、SystemB、interfaceC、forD、else3、定义一个类,必须使用的关键字是?A、publicB、classC、interfaceD、static4、声明并创建一个按钮对象b,应该使用的语句是?A、Button b=new Button();B、button b=new button();C、Button b=new b();D、b.setLabel(“确定”);5、Panel对象默认的布局管理器是?A、FlowLayoutB、BorderLayoutC、CardLayoutD、null6、如果容器组件p的布局是BorderLayout,则在p的下边中添加一个按钮b,应该使用的语句是?A、p.add(b);B、p.add(b,”North”);C、p.add(b,”South”);D、b.add(p,”North”);7、main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的?A、 public static void main()B、 public static void main(String args)C、 public static int main(String args)D、 public void main(String arg )8、定义一个接口必须使用的关键字是?A、public B、classC、interfaceD、static9、Java中char类型的数据在内存中占据的长度是?A、8位B、16位C、32位D、不确定10、关于以下程序段,正确的说法是?String s1=”hello”;/行1String s2=new String(s1);/行2if(s1= =s2)/行3 System.out.println(“s1= =s2 ”);/行4if (s1.equals(s2)/行5 System.out.println(“s1 equals s2”);/行6A、行4与行6都将执行B、行4执行,行6不执行C、行6执行,行4不执行D、行4、行6都不执行11、以下哪个字符串不能做Java中的方法名? A、set B、outC、set TextD、get12、在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为?A、隐藏 B、覆盖 C、重载 D、Java不支持此特性13、以下程序段执行后将有( )个字节被写入到文件afile.txt中。 tryFileOutputStream fos=new FileOutputStream(“afile.txt”);DataOutputStream dos=new DataOutputStream(fos);dos.writeInt(3);dos.writeDouble(0.01);dos.close();fos.close( );catch(IOException e) A、16B、12C、8D、2班级: 姓名: 学号:14、以下代码段执行后的输出结果为?int x=-3; float y=10.0f;System.out.println(y%x);A、不能成功编译B、-1.0C、1.0D、-115、假设Foo类有如下定义,设f是Foo类的一个实例,下列语句调用哪个是错误的?public class Fooint i;static String s;void imethod() static void smethod() A、Foo.imethod();B、f.imethod();C、System.out.println(f.i);D、Foo.smethod()16、分析下面的程序代码,以下哪个说法是正确的?public class Test extends Apublic static void main(String args)Test t=new Test();t.print();class A String s; A(String s) this.s=s; public void print()System.out.println(s);A、因为Test没有构造方法Test(),所以这段程序不能编译。B、如果删除A类中的构造方法,这个程序可以编译。C、这段程序可以通过编译,但由于方法名冲突,引起一个运行时错误。D、编译成功,运行情况良好。17、类Test1定义如下:1public class Test12public float aMethod(float a, float b) 34将以下哪种方法插入行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) 18、编译运行以下程序后,关于输出结果的说明正确的是 ( )public class Conditionalpublic static void main(String args )int x=1;System.out.println(“value is “+ (x<1)? 1.0 : 0) ;A、输出结果为:value is 1.0B、输出结果为:value is 0C、输出结果为:value is 0.0D、编译错误19、以下哪个接口的定义是正确的?( )A、 interface A void print() ;B、 abstract interface A void print() ;C、 abstract interface A extends I1, I2 /I1、I2为已定义的接口 abstract void print() ;D、 interface A void print();20、Java语言使用的字符码集是?A)ASCII B)BCD C)DCB D)Unicode三、多项选选题(每题2分,共10分)1. 定义类头时可以使用的访问控制修饰符是( )。Apublic B. abstract C. private D. 默认的(没有访问控制修饰符)2. 定义主类的类头时可以使用的关键字是( )。A. abstract B. final C. public D. super3. 定义一个类Point,类中有两个double型变量x和y,对于其构造函数的声明正确的是( )。A. Point Point(int x) B. public Point (int x)班级: 姓名: 学号:C. public Point(int x,int y) D. public Point(Point p)4. 以下关于构造函数及其重载的说法正确的是( )。A. 类定义了构造函数,Java就不会自动为该类创建默认的不带参数的构造函数B. 构造函数不能对私有变量初始化C. 一个类中可以含有几个构造函数,称为构造函数的重载。对于重载的构造函数,其参数列表必须不同D. 重载的构造函数之间可以通过关键字this在构造函数中的任意位置相互调用5. 以下关于类对象的使用,说法正确的是( )。A. 通过构造函数实例化一个类对象后,在类的外部,不管变量的访问修饰符是私有的还是公有的,都可以通过”对象名.变量名”对变量进行访问B. 在类的外部调用类对象拥有的方法必须用”对象名.方法名()”C. 同一个类的对象之间可以赋值,且它们分别代表不同的对象D. 类对象可以作为方法的参数,这时在方法体中可以引用对象的变量和调用对象的方法。四、程序阅读 ,分析运行结果(每题3分,共21分)1、以下程序的输出结果为_。class Aint i; public A(int i) this.i=i; public static void main(Stringargs) A a=new A(12); System.out.println (a.i); 2、以下程序段的输出结果为_。int x=0,y=4, z=5; if ( x>2)if (y<5)System.out.println(“one”);else System.out.println(“two”);else if(z>5)System.out.println(“three”);else System.out.println(“four”);3、以下程序的输出结果为_。public class Tomprivate float weight;private static String name;public void setWeight(float weight)this.weight=weight;private void out()System.out.println (name+"体重:"+weight+"斤");public static void main(Stringargs)Tom.name="汤姆猫" Tom cat=new Tom(); cat.setWeight(20); cat.out(); 4、以下程序的输出结果_。public class PersonString name;int age;public Person(String s,int age)this.name=s;this.age=age;public void out()System.out.println(name+" is "+age+"years old");public static void main(Stringargs) Person p=new Person("Peter",20); p.name="Tom"p.out(); 5、以下程序的输出结果为_。public class Testpublic static void main(String args )班级: 姓名: 学号:int x,y,max;x=3;y=4;max=3;if (x<y)max=y;System.out.println(“max=”+max);6、下列程序的运行结果是_。class MyClass int a=1,2,3,4,5;void out() for(int j=0;j<a.length;j+) System.out.print(aj+” ”);public static void main(String args)MyClass my=new MyClass();my.out();7、下列程序的运行结果是_。class TestArray public static void main(String args ) int i , j ; int a = 1,3,2,5,4; for ( i = 0 ; i < a.length-1; i + ) int k = i; for ( j = i ; j < a.length ; j+ ) if ( aj>ak ) k = j; int temp =ai; ai = ak; ak = temp; for ( i =0 ; i<a.length; i+ ) System.out.print(ai+" "); System.out.println( ); 五、简答题(每问一分,共8分)(请写清题号,题号不清不给分)class Car int carNumber; Car() Car(int no) this.carNumber=no; void setNumber(int carNum) carNumber = carNum; void showNumber() System.out.println(“My car No. is :” + carNumber); 写出这里定义了什么类?有哪些成员变量?有哪些成员方法? 有哪些构造方法? 这个类有无访问控制修饰?表示谁可以访问这个类内的属性和方法? void表示什么?static表示什么?六、编程(第一题7分,其余三题每题8分,共31分)1、 1、编写Application,打印0到10之间所有奇数,并求出所有奇数的和,打印这个和值。2、按以下要求编写程序(1) 创建一个Rectangle类,添加width和height两个成员变量。(2) 在Rectangle中添加两种方法分别计算矩形的周长和面积。(3) 编程利用Rectangle输出一个矩形的周长和面积。3、按以下要求编写Java应用程序(1)定义Animal类(父类),声明一个成员变量和一个成员方法;(2)Dog类(子类)从Animal继承,并在Dog类中声明新的成员变量;(3)对子类进行实例化,输出对象的所有成员变量值(包括从父类继承而来的变量),调用对象的各成员方法(包括从父类继承来的方法)。4、按要求编写Java应用程序(1)创建一个抽象的车类,包括各种车辆。至少包含一个抽象方法;(2)通过继承车类重新声明公共汽车类和普通自行车类。在子类中实现父类中抽象方法;(3)子类的构造方法根据不同的类为成员变量设置不同的初始值。班级: 姓名: 学号:Java程序设计课期末考试答题纸(B卷)题号一二三四五六总分得分一、判断正误,正确打“”,错误打“×”(每题1分,共10分)1、 2、 3、 4、 5、 6、 7、 8、 9、 10、 二、单项选择题(每题1分,共20分)1、 2、 3、 4、 5、 6、 7、 8、 9、 10、 11、 12、 13、 14、 15、 16、 17、 18、 19、 20、 三、多项选择题(每题2分,共10分)1、 2、 3、 4、 5、 四、程序阅读 ,分析运行结果(每题3分,共21分)1、 2、 3、 4、 5、 6、_ _7、_ _五、简答题(每问一分,共8分)(请写清题号,题号不清不给分)六、编程(第一题7分,其余三题每题8分,共31分)1、2、班级: 姓名: 学号:3、4、专心-专注-专业