A.Java的类分为两大部分:系统定义的类和用户自定义的类 B.类的静态属性和全局变量的概念完全一样,只是表达形式不同 C.类的成员至少有一个属性和一个方法 D.类是对象的实例化
7、以下有关构造方法的说法,正确的是:( A ) A.一个类的构造方法可以有多个 B.构造方法在类定义时被调用
C.构造方法只能由对象中的其它方法调用
D.构造方法可以和类同名,也可以和类名不同 8、以下有关类的继承的叙述中,正确的是:( D )
A.子类能直接继承父类所有的非私有属性,也可通过接口继承父类的私有属性 B.子类只能继承父类的方法,不能继承父类的属性
C.子类只能继承父类的非私有属性,不能继承父类的方法 D.子类不能继承父类的私有属性 9、下列属于容器的组件有:( B ) A.JButton B.JPane C.Canvas D.JTextArea 10、void 的含义:( C ) A.方法体为空
B.定义的方法没有形参 C.定义的方法没有返回值
D.方法的返回值不能参加算术运算 11、关于Java中异常的叙述正确的是:( D ) A.异常是程序编写过程中代码的语法错误 B.异常是程序编写过程中代码的逻辑错误 C.异常出现后程序的运行马上中止 D.异常是可以捕获和处理的
12、所有的异常类皆继承哪一个类?( C ) A.java.io.Exception B.java.lang.Throwable C.java.lang.Exception D.java.lang.Error
13、下面哪个不是java语言中的关键字?( B ) A.long B.sizeof C.instanceof D.const
14、为实现进程之间的通信,需要使用下列那种流才合适?(D) A.Data stream B.File stream
C.Buffered stream D.Piped stream
15、在复选框中移动鼠标,然后单击一选项,要捕获所选项必需实现哪个接口?(D) A.ActionListener B.MouseListener
C.MouseMotionListern D.ItemListener
二、填空题(每空1分,共20分)
1、面向对象程序设计所具有的基本特征是:___抽象性___,_封装性___,_继承性__,_多态性__ 2、数组x定义如下
int x[ ][ ]=new int[3][2]
则 x..length 的值为____3________, x[0].length 的值为_____2_______。
3、Java中实现多线程一般使用两种方法,一是___继承Thread类_________,二是_____实现Runnable方法__________
4、Java的图形用户界面设计中,有很多布局管理器用来摆放组件的位臵,一般用到的布局管理器有(列出四种即可)__FlowLayout_____,___GridLayout_____,__BorderLayout_____,___CardLayout_______
5、Applet常用的方法是:__init()_、__run()__、__stop()__和destroy()。 三、阅读程序,写出程序的输出结果(每题5分,共20分) 1、class A{
private int privateVar; A(int _privateVar){
privateVar=_privateVar; }
boolean isEqualTo(A anotherA){
if(this.privateVar == anotherA.privateVar) return true; else
return false; } }
public class B{
public static void main(String args[]){ A a = new A(1); A b = new A(2);
System.out.println(a.isEqualTo(b)); } }
程序的输出结果为:____false_____ 2、class A {
double f(double x, double y) { return x * y; } }
class B extends A {
double f(double x, double y) { return x + y; } }
public class Test {
public static void main(String args[]) { B obj = new B();
System.out.println(\ } }
程序的输出结果为:__ The program output is 10_ 3、public class Unchecked {
public static void main(String[] args) { try { method();
} catch (Exception e) { System.out.println(\ } finally {
System.out.println(\ } }
static void method() { try { wrench();
System.out.println(\
} catch (ArithmeticException e) { System.out.println(\ } finally {
System.out.println(\ }
System.out.println(\
}
static void wrench() {
throw new NullPointerException(); } }
程序的输出结果为: E A B
4、public class Test {
public static void main(String[] args) { int x;
int a[] = { 0, 0, 0, 0, 0, 0 }; calculate(a, a[5]);
System.out.println(\ System.out.println(\ }
static int calculate(int x[], int y) { for (int i = 1; i < x.length; i++) if (y < x.length) x[i] = x[i - 1] + 1; return x[0]; } }
程序的输出结果为: the value of a[0] is 0 the value is a[5] is 5
1. 下面哪些是short型的取值范围 [C] A. -27 – 27-1 B. 0 – 216-1 C. -215 – 215-1 D. -231 – 231-1
2. 下面哪些是合法的标识符 [ABE] A. $persons B. TwoUsers C. *point D. this E. _endline
3. 哪些是将一个十六进制值赋值给一个long型变量 [D] A. long number = 345L; B. long number = 0345; C. long number = 0345L; D. long number = 0x345L;
4. 下面的哪些程序片断可能导致错误。 [BD] A.
String s = \ String t = \ String k = s + t; B.
String s = \ String t;
t = s[3] + \C.
String s = \ String standard = s.toUpperCase(); D.
String s = \
String t = s - \
5. 在// point x处的哪些声明是合法的 [DE] class Person { private int a;
public int change(int m){ return m; } }
public class Teacher extends Person { public int b;
public static void main(String arg[]){ Person p = new Person(); Teacher t = new Teacher(); int i; // point x } }
A. i = m; B. i = b; C. i = p.a;
D. i = p.change(30); E. i = t.b;
6. 当Frame的大小被改变时, Frame中的按钮的位臵也可能被改变,请问此时使用的是什么布局管理器 [B] A. BorderLayout B. FlowLayout C. CardLayout D. GridLayout
7. 给出下面的代码片断
1 public void create() { 2 Vector myVect;
3 myVect = new Vector(); 4 }
下面的哪些陈述是正确的? [ADE]
A. 第二行的声明不会为变量myVect分配内存空间。 //指的是堆空间,只是在栈 中分配;这里不用较真.自己理解就好;
B. 第二行的声明分配一个到Vector对象的引用的内存空间。 C. 第二行语句创建一个Vector类对象。 D. 第三行语句创建一个Vector类对象。
E. 第三行语句为一个Vector类对象分配内存空间。
//分配栈空间,相当于指针,但是不分配\到Vector对象的引用的空间\选项二的意思是分配了堆空间; 8. 下面的哪些答案可以用以表示八进制值8? [A] A. 010 B. 0x10 C. 08 D. 0x8 9. 哪些不是Java关键字 [AB] A. TRUE B. sizeof C. const D. super E. void 10. 下面的哪些叙述为真。 [AD]
A. equals()方法判定引用值是否指向同一对象。 //不说是谁的就是默认的 B. == 操作符判定两个分立的对象的内容和类型是否一致。 C. equals()方法只有在两个对象的内容一致时返回true。
D. 类File重写方法equals()在两个分立的对象的内容和类型一致时返回true。 //当两个独立的对象的内容和类型一致;
11. 下面关于继承的哪些叙述是正确的。 [AD] A. 在java中只允许单一继承。
B. 在java中一个类只能实现一个接口。
C. 在java中一个类不能同时继承一个类和实现一个接口。 D. java的单一继承使代码更可靠。 12. 第十行的声明将调用哪些方法. [D] 1 class Person {
2 public void printValue(int i, int j) { } 3 public void printValue(int i){ } 4 }
5 public class Teacher extends Person { 6 public void printValue() { } 7 public void printValue(int i) {}
8 public static void main(String args[]){ 9 Person t = new Teacher(); 10 t.printValue(10); 11 } 12 }
A. 第2行的方法 B. 第3行的方法 C. 第6行的方法 D. 第7行的方法
13. 下面哪些不是java的原始数据类型 [BC] A. short B. Boolean C. Unit D. float
14. 下面的哪些关键字通常用来对对象的加锁,该标记使得对对象的访问是排他的? [B] A. transient B. synchronized C. serialize D. static 15. main()方法的返回类型是什么? [B]
A. int B. void C. Boolean D. static
16. 给出以下关于一个使用适当的字符间距的字体的TextField的表达式 TextField t = new TextField(\指的是像素 哪些叙述是对的? [D]
A. 被显示的字符串可以使用多种字体。 B. 一行中最大的字符数是40
C. 显示的宽度正好是40个字符宽。 D. 用户可以编辑字符。
17. 关于垃圾收集的哪些叙述是对的? [B]
A. 程序开发者必须自己创建一个线程进行内存释放的工作。 B. 垃圾收集将检查并释放不再使用的内存。
C. 垃圾收集允许程序开发者明确指定并立即释放该内存。 D. 垃圾收集能够在期望的时间释放被java对象使用的内存。 18. 给出下面的代码
1 public class Test { 2 int m, n;
3 public Test() {}
4 public Test(int a) { m=a; }
5 public static void main(String arg[]) { 6 Test t1,t2; 7 int j,k; 8 j=0; k=0;
9 t1=new Test(); 10 t2=new Test(j,k); 11 } 12 }
在编译时哪行将导致一个错误? [D] A. 第3行 B. 第5行 C. 第6行 D. 第10行
19. Thread的方法resume()负责恢复哪些线程的执行? [D] A. 通过调用stop()方法而停止的线程。
B. 通过调用sleep()方法而停止运行的线程。 C. 通过调用wait()方法而停止运行的线程。
D. 通过调用suspend()方法而停止运行的线程。 //已经过期了 20. 有关线程的哪些叙述是对的? [BD]
A. 一旦一个线程被创建,它就立即开始运行。
B. 使用start()方法可以使一个线程成为可运行的,但是它不一定立即开始运行。 C. 当一个线程因为抢先机制而停止运行,它被放在可运行队列的前面。//比它 优先级高的进程抢占了cpu,它运行的时间根据操作系统而定;
D. 一个线程可能因为不同的原因停止并进入就绪状态。//可运行状态
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库《JAVA语言程序设计》期末考试试题及答案2(题库超级大全 - 应考(2)在线全文阅读。
相关推荐: