超级无敌神奇的java期末考试题库_第1页
超级无敌神奇的java期末考试题库_第2页
超级无敌神奇的java期末考试题库_第3页
超级无敌神奇的java期末考试题库_第4页
超级无敌神奇的java期末考试题库_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

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

文档简介

1、一、 选择题第五章1. 设 A为已定义的类名,下列声明A类的对象a的语句中正确的是(A)A) A a=new A( ); B) public A a=A( ); C) A a=new class( ); D) a A;2. 设 X 、Y 均为已定义的类名,下列声明类X的对象x1的语句中正确的是 (C) (A)public X x1= new Y( ); (B)X x1= X ( ); (C)X x1=new X( ); (D)int X x1;3. 下列方法定义中,正确的是(D)A) int x( int a,b ) return (a-b); B) double x( int a,int b

2、) int w; w=a-b; C) double x( a,b ) return b; D) int x( int a,int b) return a-b; 4. 下列方法定义中,正确的是(D )A) void x( int a,int b ); return (a-b); B) x( int a,int b) return a-b; C) double x return b; D) int x( int a,int b) return a+b; 5. 下列方法定义中,不正确的是(D) A) float x( int a,int b ) return (a-b); B) int x( int

3、 a,int b) return a-b; C) int x( int a,int b ) return a*b; D) int x(int a,int b) return 1.2*(a+b); 6. 下列方法定义中,正确的是(A)A) int x( ) char ch=a; return (int)ch; B) void x( ) .return true; C) int x( ) .return true; D) int x( int a, b) return a+b; 7. 下列方法定义中,方法头不正确的是(D)A)public int x( ) . B)public static in

4、t x( double y ) . C)void x( double d ) . D)public static x( double a ) . 8. 定义类头时,不可能用到的关键字是(B) A) class B)private C)extends D)public9. 设i , j为类X中定义的int型变量名,下列X类的构造方法中不正确的是(A) A) void X(int k ) i=k; B) X(int k ) i=k; C) X(int m, int n ) i=m; j=n; D) X( )i=0;j=0; 10. 有一个类A,以下为其构造方法的声明,其中正确的是(A) A)pub

5、lic A(int x). B)static A(int x). C)public a(int x). D)void A(int x).11. 有一个类A,以下为其构造方法的声明,其中正确的是(B) A)void A(int x). B)A(int x). C)a(int x). D)void a(int x).12. 设i、j、k为类X中定义的int型变量名,下列类X的构造方法中不正确的是(B) A) X( int m) . B) void X( int m) . C) X( int m, int n) . D) X( int h,int m,int n) . 13. 设i , j为类X中定

6、义的double型变量名,下列X类的构造方法中不正确的是(A) A) double X(double k ) i=k; return i; B) X(double m, double n ) i=m; j=n; C) X( )i=6;j=8; D) X(double k ) i=k; 14. 设 A为已定义的类名,下列创建A类的对象a的语句中正确的是 (D) A)float A a; B )public A a=A( ); A )a=new int( ); D )A a=new A( );第六七章1. Java语言的类间的继承关系是( B )。 A) 多重的 B) 单重的 C) 线程的 D)

7、不能继承 2. 以下关于Java语言继承的说法正确的是( C )。 A)Java中的类可以有多个直接父类 B)抽象类不能有子类 C)Java中的接口支持多继承 D)最终类可以作为其它类的父类3. 现有两个类A、B,以下描述中表示B继承自A的是(D)。 A) class A extends B B) class B implements A C) class A implements B D) class B extends A4. 下列选项中,用于定义接口的关键字是( A)。 A)interface B) implements C) abstract D) class5. 下列选项中,用于实现

8、接口的关键字是( B)。 A)interface B) implements C) abstract D) class二、填空题1、以下代码的输出结果是_j_ int i=9; char c=a; char d=(char)(c+i);System.out.println(d);2、 面代码执行完后的输出是_b is: false _int x=3;int y=4;boolean b=true;System.out.println(b is:+(b=(yy&zy的结果是_false_5、 写出定义双精度浮点型常量PI,值为3.1415926的语句:final double PI=3.14159

9、26_6、 在Java语言中,逻辑常量只有true 和 _ false_ 两个值。7、 表达式1/2*3的计算结果是_0_8、 执行以下程序段后:a = _6_, b = _18_ int a = 5, b;b = +a * 3;9、 Java语言中的浮点型数据根据数据存储长度和数值精度的不同,进一步分为float和 _double_两种具体类型。11、当整型变量n的值不能被13除尽时,其值为 false 的Java语言表达式是_n%13= =0_ 。12、表达式3/6 * 5的计算结果是_0_ 。13、若a,b为int型变量且已分别赋值为2,4。表达式 !(+a!=b-)的值是_ _fals

10、e_ 。14、若a,b为int型变量且已分别赋值为2,6。表达式(a+)+(+b) +a*b的值是_30_ 。15. 如果子类中的某个变量的变量名与它的父类中的某个变量完全一样,则称子类中的这个变量_隐藏_了父类的同名变量。16. 属性的隐藏是指子类重新定义从父类继承来的 同名变量或属性 17. 如果子类中的某个方法的名字、返回值类型和_参数列表_与它的父类中的某个方法完全一样,则称子类中的这个方法覆盖了父类的同名方法。18. Java 仅支持类间的_单_重继承。19 抽象方法只有方法头,没有_方法体_。20 。Java 语言的接口是特殊的类,其中包含static(静态)常量和_ abstra

11、ct(抽象)方法。21 接口中所有属性均为_public _、_static_和_final_的。 三、问答题1. 构造方法和一般的方法有何区别?答:名字是类名 没有返回值 使用new调用2. 面向对象的软件开发方法用什么把数据和基于数据的操作封装在一起? 答:类3. 在一个类定义中,用什么描述对象的状态? 用什么描述对象的行为? 答:属性、方法4. 什么方法是一个特殊的方法,用于对对象进行初始化?答:构造方法5. 一个源程序文件中,能有多于一个的 public 类吗? 答:不能6. 构造方法的方法名可由编程人员任意命名吗? 答:不能7. 类的构造方法名必须和类名相同吗?答:是的8. 类的访问

12、控制修饰符有哪些,访问权限各是什么?答:Public 公共的,可以被所有类访问默认的:可被同一包中的类访问9. 类的成员的访问控制修饰符有哪些,访问权限各是什么?答:P80表6.310. 包的作用是什么?如何声明一个包?答:包是类的容器,用来保存划分的类名的空间 声明格式:package 包名11. 如何导入一个包?答:import 包名12. 定义类的访问器和设置器的形式是什么?答:访问器:public 返回值类型 get属性名()return 属性名; 设置器:public void set属性名(数据类型 参数值) 属性名=参数值;13 Java语言的特点有哪些(举例说出三个即可)?答:

13、面向对象、简单、多线程等14 程序流程的三种结构是什么?答:顺序 选择 循环15 编译Java程序的命令是什么?运行Java程序的命令是什么?Java源文件的扩展名是什么?答:javac java .java16 Java中的基本数据类型共有三种,分别是什么?答:数值 字符 布尔17 面向对象程序的三个特点是什么?答:封装 继承 多态18 写出方法和属性的修饰符(举例说出三个即可)?答案同第9题19 Java源文件的扩展名是什么?字节码文件的扩展名是什么?答:.java .class20 方法重载的概念?答:在同一个类中方法名称相同,参数类型或个数不同的现象21 属性的隐藏概念?答:在子类中重

14、新定义与父类相同的属性。22 方法的覆盖?答:在子类中重新定义与父类相同的方法。四、程序阅读和程序填空题1、下面的程序的输出结果是什么?public class Mystery public static void main (String args ) int y=0, x = 1 , total = 0 ;while (x=10)y = x*x;System.out.println( y );total += y;System.out.println( “Total is ”+total ); x+; 答案:1Total is 14Total is 59Total is 1416Total

15、 is 3025Total is 5536Total is 9149Total is 14064Total is 20481Total is 285100Total is 3852、下面是一个java应用程序(Application),它的功能是在屏幕上输出26个小写英文字母,其中每个字母相隔一个制表符,请完成程序填空?public _class_ Class1 public static void main( String args ) char c=a; for (int i=1;i=26;i+) System.out.print(_c+_”t”_); 3、下面是一个java应用程序(Ap

16、plication),它的功能是计算 s=1+2+3+.+10 ,请完成程序填空?public _class_ Class1 public static void main( String args ) int s=0; for (int i=1;i=10;i+) s+=_i_; System.out.println(s=+s); 4、下面是一个java Application 的主类的定义,其功能是输出乘法口诀表第一列,请完成程序填空? import java.io.*;public class MyClass public static void main(String args) int

17、 j=1; for(int i=1; _ib) return a;else return b;_ 9、 以下方法m的功能是求两参数之积的整数部分。int m ( float x, float y ) _return (int)(x*y);_ 10、 下面方法的功能是判断一个整数是否为偶数,将程序补充完整。public _boolean_ isEven(int a) if(a%2=0) return _true_;else return _false_;11、现有类说明如下,请回答问题:public class A String str1= Hello! t; String str2= How

18、are you? ; public String toString( ) return str1+str2; public class B extends A String str1=bb,Bill.; public String toString( ) return super.str1+str1; 问题:1)类A和类B是什么关系?(答:继承关系)2)类A和类B都定义了str1属性和方法toString( ), 这种现象分别称为什么?(答:属性的隐藏;方法的覆盖)3)若a是类A的对象,则a.toString( )的返回值是什么? (答:Hello!How are you?)4)若b是类B的对

19、象,则b.toString( )的返回值是什么?(答:Hello,Bill.)12.现有一个类定义如下,请回答问题? class Employee String name; int age; double wage; static int No=0; Employee(String a1,int a2,double a3) name=a1; age=a2; wage=a3; No+; 在使用该类时,已使用下面语句生成了该类的对象:Employee e1,e2;e1=new Employee(王劲,26,6300);e2=new Employee(张山,30,3800);问题:1)

20、,e2.age,e2.wage的值各是什么?(答:张山;30;3800.0)2)生成对象e1、e2后,e1.No值为多少?能否通过类名做前缀引用属性No?(答:2; 能)补充:e1.No=e2.No=Employee.No=213.阅读程序,回答问题。public class InheritTest1 public static void main (String args) A aa; B bb; aa=new A( ); bb=new B( ); aa.show( ); bb.show(); class A int a=1; double d=2.0; void show( ) Syste

21、m.out.println(Class A: +ta=+a +td=+d); class B extends A float a=3.0f; String d=Java program.; int b=4; void show( ) System.out.println(Class A: +ta=+super.a +td=+super.d); super.show( ); System.out.println(Class B: +ta=+a +td=+d+tb=+b); 问题:1)这是哪一类java程序?(答:java应用程序) 2)类A和类B是什么关系?(答:类B是类A的子类)3)按程序输出

22、的格式写出程序运行后的结果?Class A: a=1 d=2.0Class A: a=1 d=2.0Class A: a=1 d=2.0Class B: a=3.0 d=Java program. b=4 14.现有类说明如下,请回答问题:class A int x=10; int getA()return x;class B extends A int x=100; int getB()return x;问题:1)类B是否能继承类A的属性x?(答:能) 2)若b是类B的对象,则b.getB()的返回值是什么?(答:100) 3)若b是类B的对象,则b.getA()的返回值是什么?(答:10)

23、4)类A和类B都定义了x属性,这种现象称为什么?(答:属性的隐藏)15.有如下源程序,请回答问题:class A String s=class A; class B extends A String s=class B; public class TypeConvertpublic static void main(String args)B b1,b2=new B();A a1,a2;a1=(A)b2;a2=b2;System.out.println(a1.s);System.out.println(a2.s);b1=(B)a1;System.out.println(b1.s);System

24、.out.println(b2.s);问题: 该程序的四行输出各是什么?答案:class Aclass Aclass Bclass B16.现有类说明如下,请回答问题:public class A int x=888; String str=I like: ; public String toString() return str+x; public class B extends A String x=java; public String toString() return str+x+ and +super.x; 问题:1)类A和类B是什么关系?(答:类B是类A的子类) 2)类A和类B都

25、定义了x属性和方法toString(),这种现象分别称为什么?(答:属性的隐藏和方法的覆盖) 3)若a是类A的对象,则a.toString( )的返回值是什么?(答:I like: 888)4)若b是类B的对象,则b.toString( )的返回值是什么?(答:I like: java and 888)17.运行类C的输出结果是什么?class Apublic A()System.out.println(“The default constructor of A is invoked”);class B extends Apublic B()public class Cpublic stati

26、c void main(String args)B b = new B();结果:The default constructor of A is invoked8.阅读下列程序写出输出结果?class A String s=class A; void show() System.out.println(s); class B extends A String s=class B; void show() System.out.println(s);public class TypeConvertpublic static void main(String args) B b1;B b2=new

27、 B();A a1,a2;a1=(A)b2;a2=b2;System.out.println(a1.s); a1.show();System.out.println(a2.s); a2.show();b1=(B)a1;System.out.println(b1.s); b1.show();System.out.println(b2.s); b2.show();答案:class Aclass Bclass Aclass Bclass Bclass Bclass Bclass B19、下面是一个类的定义,完成程序填空?public class Youwrite int x;_ Youwrite _

28、( ) x=0; Youwrite ( int x) _ this.x=x _; 20.下面是定义一个接口ITF的程序,完成程序填空? public _interface_ ITF public static final double PI=Math.PI; public _abstract_ double area(double a, double b);21.下面是定义一个接口A的程序,完成程序填空。(final ”;” )public interface A public static _final_ double PI=3.14159; public abstract double a

29、rea(double a, double b)_;_22.写出程序的运行结果?public class ClassX public static void main(String args ) int a = 45,18, 98, 56, 304 ; for (int i = a.length-1 ; i =0; i - ) System.out.print(ai + t); 答案: 304 56 98 18 4523.写出程序的运行结果?public class C public static void main(String args) String s1 = new String(Hel

30、lo!);String s2 = new String(I love JAVA.);A s = new A(s1, s2);System.out.println(s1 + s2);System.out.println(s.toString();class A String s1;String s2;A(String str1, String str2) s1 = str1;s2 = str2;str1 = No pain ,;str2 = no gain!;System.out.println(str1 + str2);public String toString() return s1 +

31、s2;答案: No pain ,no gain!Hello!I love JAVA.Hello!I love JAVA.24.写出程序的运行结果?class Parent void printMe() System.out.println(parent);class Child extends Parent void printMe() System.out.println(child);void printAll() super.printMe();this.printMe();printMe();public class T public static void main(String a

32、rgs) Child myC = new Child();myC.printAll();答案:parentchildchild25.回答问题?1: public class Output1 2: public static void main(String args) 3: int i=0;4: for ( int ch = 1; ch8; ch+,i+) 5: if( i % 4 = 0 ) 6: System.out.println( );7: System.out.print(t +ch); 8: 9: 10: 问题:(1)程序第5、6行的if语句的功能是什么?答:if语句的功能是换行

33、(2)程序输出的结果是什么?答: 1 2 34 56726.回答问题?定义类A和类B如下.:class Aint a=3;double d=6.0;void show( ) System.out.println(Class A: a=+a +,d=+d); class B extends A float a=5.0f; String d=Hello Java.; void show( ) super.show( ); System.out.println(Class B: a=+a +,d=+d); 问题:(1) 若在应用程序的main方法中有以下语句: A a=new A(); a.show

34、();则输出的结果如何?答:Class A:a=3,d=6.0(2) 若在应用程序的main方法中定义类B的对象b: B b=new B(); b.show();则输出的结果如何?答: Class A: a=3,d=6.0 Class B: a=5.0, d=Hello Java. 五、编程题1、编写一个Java应用程序,用循环结构打印如下的数值列表?N10*N100*N1000*N1 10 100 10002 20 200 20003 30 300 30004 40 400 40005 50 500 5000答案:public class Xiti1 public static void m

35、ain(String args) System.out.println(Nt10*Nt100*Nt1000*N);for (int i = 1; i = 5; i+)System.out.println(i + t + i * 10 + t + i * 100 + t + i* 1000);2、用while循环求n2大于12000的最小数n?答案:public class Xiti2 public static void main(String args) int n=1; while(n*n=12000) n+;System.out.println(n2大于12000的最小数为+n);3、打

36、印2到10000的所有素数,每行显示8个素数?答案:public class Xiti3 public static void main(String args) int k = 0;int m=0;for (int n = 2; n = 10000; n+) m=0; for(int j=1;j=n;j+) if(n%j=0) m+; if(m=2) System.out.print(n + t); k+;if (k%8 = 0)System.out.println();5实现一个名为Person的类和它的子类Employee,Employee有两个子类Faculty和Staff。具体要求如

37、下:(1)Person类中的属性有:姓名name(String类型),地址address(String类型),电话号码telphone(String类型)和电子邮件地址email(String类型);(2)Employee类中的属性有:办公室office(String类型),工资wage(double类型),受雇日期hiredate(String类型);(3)Faculty类中的属性有:学位degree(String类型),级别level(String类型);(4)Staff类中的属性有:职务称号duty(String类型);class Person String name ;String a

38、ddress;String telphone;String email;public String toString()return Person+name;class Employee extends Person String office;Double wage;String hiredate;public String toString()return Employee+name;class Faculty extends Employee String degree;String level;public String toString()return Faculty+name;cl

39、ass Staff extends Employee String duty;public String toString()return Staff+name;6 定义一个Person类,它包括的属性有“姓名”和“性别”,为Person类派生出一个子类Student类,为Student子类添加两个属性年龄和成绩等级(用A,B,C,D,E表示),在子类中打印出学生的姓名、性别、年龄及成绩等级?class Personprotected String name;protected String sex;class Student extends Personprotected int age;p

40、rotected char grade;public Student(String name,String sex,int age,char grade)=name;super.sex=sex;this.age=age;this.grade=grade;public void print()System.out.println(name);System.out.println(sex);System.out.println(age);System.out.println(grade);public class Test public static void main(Str

41、ing args) Student s1=new Student(zhangsan,男,20,A);s1.print();7定义一个类Rectangle代表矩形,其中包括计算面积的方法。再定义一个它的子类Square代表正方形,其中也包含计算面积的方法。编写一程序,测试新建子类对象的属性和方法?class Rectanglefloat length;float width;Rectangle(float len,float wh)length=len;width=wh;float getArea()return length*width;class Square extends Rectanglefloat length;Square(float len)super(len,len);length=len

温馨提示

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

评论

0/150

提交评论