Java试题A

更新时间:2023-10-31 04:52:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

Java测试题(A卷)

一、单选题(2分/题*20题=40分)

1. 下列javaDoc注释正确的是()

A、/*我爱北京天安门*/ B、//我爱北京天安门*/ C、/**我爱北京天安门*/ D、/*我爱北京天安门**/ 2. 下列说法正确的是()

A、JAVA程序的main方法必须写在类里面 B、JAVA程序中可以有多个main方法 C、JAVA程序中类名必须与文件名一样

D、JAVA程序的main方法中如果只有一条语句,可以不用{}(大括号)括起来 3. 下列语句执行后,变量a、c的值分别是()。

int x=182; int a,c;

c=x/100; a=x;

A、1,2 B、 2,1 C、1.82, 2 D、100,82 4. 下面哪个表达式可用得到x和y的最大值()?

A、 x>y?y:x B、 xy?(x+y):(x-y) D、 x==y?y:x; 5. 以下代码的执行结果是:()

a = 6;

System.out.print(a); System.out.print(a++); System.out.print(a); A、666

B、667

C、677 D、676

6. 下列输出结果是() int a = 2

while ( a < 5 ) { switch(a){ case 0:

case 3 : a = a + 2; case 1 :

case 2 : a = a + 3; default : a = a + 5; } }

System.out.print ( a ) A、5

B、7

C、10

D、12

7. 下面是func(int m,int n)方法的定义,方法调用func (1,4)的返回结果是()。

int func (int m,int n) {

int sum=0;

for(int i=1;i<=4;i+=2) { sum+=i; }

return sum; } A、 1

B、 4

C、5

D、10

8. 以下定义一维数组的语句中,正确的是()

A、 int a[5]

B、 int a[] = new. int[5];

C、int a[] ; D、 int a[] = {1,2,3,4,5};

9. 分析选项中关于Java中this关键字的说法正确的是()

A、this关键字是在对象内部指代自身的引用 B、this关键字可以在类中的任何位置使用

C、this关键字和类关联,而不是和特定的对象关联 D、同一个类的不同对象共用一个this

10. 在Java中,关于构造方法,下列说法错误的是()

A、构造方法的名称必须与类名相同 B、构造方法可以带参数 C、构造方法不可以重载 D、构造方法绝对不能有返回值

11. 假设类A有构造方法A(int a),则在类A的其它构造方法中调用该构造方法的语句为()

A、A(x) B、this.A(x)

C、this(x)//本类的构造方法都是使用this关键字来调用 法使用的是super

12. 下列关于抽象类的说法正确的是()

A、某个抽象类的父类是抽象的,则这个子类必须重载父类的所有抽象方法 B、抽象类中必须存在抽象方法 C、绝对不能用抽象类去创建对象

D、抽象类可以实现接口,并且可以只实现接口的部分接口方法 13. 下面代码段

静态的变量只有一个值,常驻内存存在的

class HasStatic{ }

输出的结果是:

private static int x = 101;

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

HasStatic hs1 = new HasStatic(); hs1.x++;102

HasStatic hs2 = new HasStatic(); hs2.x++;102

hs1 = new HasStatic(); hs1.x++;103 HasStatic.x--;

System.out.println(hs1.x + hs2.x);

D、super(x)调用父类的构造方

A、103102

B、204

C、205

D、206

14. 下面()不是String类提供的合法的方法。

A、equals(String) //判断是否内容相同 B、trim() //去空格的函数 C、append()

D、indexOf() //对索引进行处理

15. 在JAVA中,LinkedList类和ArrayList类同属于集合框架类,下列()选项中的方法是LinkedList类

有而ArrayList类没有的。 A、add(Object o)

B、add(int index,Object o) C、remove(Object o) D、removeLast() 16. 下列哪些说法是正确的?

A、 IOException必须被捕获或抛出 B、 java语言声明变量的同时必须赋值

C、 java 语言不允许同时继承一个类并实现一个接口 D、 垃圾收集可被随时强制执行 17. 关于线程状态的说法正确的是()

A、使用new刚创建出来的线程是就绪状态 B、调用start()方法线程立即处于运行状态 C、提倡调用stop()方法终止线程

D、线程等待IO输入会处于线程阻塞状态 18. 以下代码:

class Message{ String mailmessage;

} ...

Message data;

Socket toServer=new Socket(\...

ObjectOutputStream out=new ObjectOutputStream(toServer.getOutputStream()); out.write(data);

在执行上面代码时引发异常NotSerializableException。引发此异常的可能原因是什么? A. 没有连上服务器

B. 此消息类(Message)声明不充分 C. 输出套接字可能被破坏

D. 写出到此套接字,不应使用ObjectOutputStream 19. 关于JDBC编程,以下说法错误的是()。

A、 使用Class.forName( )方法加载数据库驱动程序

B、 使用DriverManager的getConnection()方法建立与数据库的连接 C、 使用Connection的executeQuery(sql)方法执行查询得到ResultSet对象 D、 用executeUpdate( )执行更新、删除语句不会得到ResultSet对象

20. 下面代码段,

class Dog {

}

class Beagle extends Dog{ }

如果类Beagle继承Dog, 并且Beagle类只有一个构造器 ,下面哪个是Beagle类合法的构造器? A、 Beagle() { } B、 Beagle() { super(); } C、 Beagle() { super(\

D、 不提供构造器,使用默认的构造器。

Dog(String name) { }

二、多选题(错选、漏选不得分,2分/题*10题=20分)

1. 下面的说法正确的是()。

A、 Java 语言是面向对象的、解释执行的网络编程语言。

B、 Java 语言具有可移植性,是与平台无关的编程语言。 C、 Java 语言可对内存垃圾自动收集。

D、 Java 语言编写的程序虽然是“一次编译,到处运行”,但必须要java的运行环境。 2. 在Java接口中,下列选项中有效的方法声明是()。(选择二项)

A、public void aMethod(); B、void aMethod();

C、protected void aMethod(); D、private void aMethod(); 3. 定义变量如下:

char c='w'; int i=8; long L=15; float f=8.9f;

以下赋值语句正确的是()。

A、 i=c+i; B、 c=c+i; C、L=f+L; D、 f=i+L+f;

4. 面向对象程序设计的三大特征是( )。

A、抽象 B、封装 C、继承 D、多态 5. 下面关于类的说法正确的是()。

A、类是 Java 语言中的一种复合数据类型。 B、类中包含数据变量和方法。

C、类是对所有具有一定共性的对象的抽象。 D、 Java 语言的类只支持单继承。 6. 编译并运行下面的程序:

public class A { }

class B extends A {

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

void test() { }

System.out.print (\ A a=new B( ); a.test();

}

以下结论正确的有().

A、子类B定义了与父类A中同名的方法test,java中称为方法的覆盖。 B、代码可以编译运行,并输出结果:AB。 C、代码可以编译运行,并输出结果:A。

D、子类B定义了与父类A中同名的方法test,java中称为方法的重载。 7. 下面哪些说法正确()?

A、如果某公共的接口被声明在一个源文件中,则接口必须与源文件具有相同的名字。 B、如果源文件包含import语句,则该语句必须是除空行和注释行外的第一个语句行。 C、如果某源文件包含package语句,则该语句必须是第一个非空、非注释行。 D、接口中的方法必定是抽象方法,但可以不用关键字abstract修饰。 8. 关于面向对象的说法正确的是()

A、面向对象编程是类来描述现实世界中的实体 B、有多少个实体就要创建多少个类

C、对象的行为和属性被封装在类中,外界通过发送消息来通知对象执行某个任务 D、现实世界中的某些实体不能用类来描述 9. 下面代码:

1. class Over { 2. 3. 4. 5. } 6.

7. class Over2 extends Over { 8. 9. }

哪两个选项放在第8行会导致不能编译?

A、 public int doStuff(int x, float y) { return 4; } B、 protected int doStuff(int x, float y) {return 4; } C、 private int doStuff(int x, float y) {return 4; } D、 String doStuff(int x, float y) { return “4”; } E、 int doStuff(float x, int y) { return 4; }

// 选择代码添加在此处 int doStuff(int a, float b) { }

return 7;

void test() { }

super.test();

System.out.println(\

10. 以下关于布局的说法,正确的是()

A、布局管理是为了能自动适应窗口大小的变化

B、BorderLayout是边框布局,他将窗口分为上、下、左、右四部分

C、FlowLayout是流布局,这种布局将其中的组件按照加入的先后顺序从左向右排列,一行排满之后就转到下一行继续从左至右排列

D、 GridLayout是网格布局,它以矩形网格形式对容器的组件进行布置。容器被分成大小相等的矩形,一个矩形中放置一个组件

三、填空题(2分/题*5题=20分)

1.补充下面代码的实现求数组中元素的最小值。

int[] x={122,33,55,678,-987};

int min=_____999_________; for(int i=1;i

System.out.println(“最小值为:”+min);

2.终止循环使用关键字____break______,结束本次循环进入下一次循环使用关键字____continue______。 3.子类中调用父类被重写的方法需使用关键字__Super____,声明常量使用关键字___final______。 4.自定义的异常类通常继承自______Execption____________类,方法声明中抛出异常使用关键字____throw______。

5.内部类的特点是内部类与外部类共享______外部类的成员变量_________;内部类中的实例变量与外部类的实例变量重名时,内部类中通过“_____________.this.外部类实例变量名”来引用外部类实例变量。

if(_x[i]

min=x[i];

四、问答题(4分/题*5题=20分)

1.什么是垃圾,java垃圾回收的工作原理 2.类变量与实例变量的区别

3.Vector与TreeSet在存储结构和存取性能上的区别

4.IO流分为字节流和字符流,说明他们的区别,每一类分别说出两个java类

5.什么是线程安全问题?什么情况下容易产生线程安全问题?线程安全问题如何解决?

五、程序题(5分/题*2题=10分)

1.用循环输出九九乘法口诀表

2.编写TCP服务器端程序,并且每个连接启动一个单独的线程来处理。

本文来源:https://www.bwwdw.com/article/cth2.html

Top