文档库

最新最全的文档下载
当前位置:文档库 > JavaSe内部测试笔试题

JavaSe内部测试笔试题

《JavaSE》结课笔试

注意:1、考试时间120分钟;

2、请将答案填写到答题纸上;

1、面向对象编程的三大特性是()

A) 封装,继承,多态B) 封装,重用,继承

C) 继承,抽象,多态D) 封装,灵活,抽象

2、下面关于构造方法的说法正确的是()(多选)

A. 构造方法不能被继承

B. 构造方法不能被重写

C. 构造方法不能被重载

D. 构造方法不能声明为private

3、下面关于类的说法,不正确的是()

A) 类是同种对象的集合和抽象B) 类属于Java语言中的引用数据类型

C) 对象是类的实例D) 类就是对象

4、封装性可以对类的成员进行访问级别控制,其中限制最严格的是()

A) public B) private

C) default D) protected

5、以下哪种类成员修饰符可以在不同包的子类中访问()

A) static B) private

C) default D) protected

6、Java语言中哪个包是被自动导入的()

A) java.util B) http://www.wendangku.net/doc/2411a95aaa114431b90d6c85ec3a87c240288a0c.htmlng

C) java.default D) java.io

7、以下程序代码中,如何使属性foo可以在方法bar中被直接访问()

class Test{

public float foo;

public static void bar(){

//…方法bar的代码

}

}

A) 将public float foo改为protected float foo

B) 将public float foo改为private float foo

C) 将public float foo改为static float foo

D) 将public float foo改为float foo

8、有一个类MyClass,它的构造方法声明正确的是()

A) void MyClass(int x) {...} B) Myclass(int x){...}

C) public MyClass(int x){…} D) public void MyClass(int x){…}

9、对下列程序说法正确的是()

public class Test7{

public static void main(String args[]){

String s1 = "Hello world";

String s2 = "Hello";

s2 = s2 + " world";

System.out.println(s1 == s2);

}

}

A) true B) false

C) 编译错误D) Hello world

10、在Java中,如果父类中的某些方法不包含任何逻辑,并且需要由子类重写,应该

使用()关键字来声明父类的这些方法

A) final B) abstract

C) static D) void

11、考虑以下代码

byte[] array1;

byte array2;

byte array3[][];

byte[][] array4;

以下数组操作中正确的是( )

A) array2 = array1; B) array3 = array4;

C) array1 = array3; D) array1 = array4;

12、关于数组,下列说法不正确的是( )

A) 数组是一系列相同类型数据的集合

B) 数组的元素可以是基本型、引用型或其它数组

C) 定义数组的同时必须分配内存空间

D) 一个数组中的所有值必须是相同类型

13、下面关于接口说法不正确的是( )

A) 接口的所有方法都是抽象的B) 接口所有的方法一定都是public的

C) 用于定义接口的关键字是implements D) 接口是一组行为的集合

14、为了区分类中重载的同名不同方法,要求( )

A) 参数的类型或个数不同B) 使用不同的参数名

C) 修改访问权限D) 方法返回值数据类型不同

15、如果子类覆盖了父类的一个public方法,则此方法在子类中可以使用什么修饰符()

A) public B) public和protected

C) private D) 任何修饰符都可以,根据需要选用

16、不能用在类上的修饰符是()

A) final B) public

C) abstract D) protected

17、下列程序段运行后,标准输出是( )

public class TestEx{

public static void main(String args[]){

method();

}

static void method(){

try{

System.out.println("test");

}finally{

System.exit(0);//程序中止

System.out.println("finally");

}

}

}

A) test

B) finally

C) test

fianlly

D) 无法通过编译

18、运行下面的程序时会产生什么异常( )

public class TestEx{

static public void main(String args[]){

int x = 0;

int y = 2/x;//只报先出现的异常

int z[] = {1, 2, 3, 4};

int p = z[4];//越界,调用

}

}

Exception in thread "main" http://www.wendangku.net/doc/2411a95aaa114431b90d6c85ec3a87c240288a0c.htmlng.ArithmeticException: / by zero at IOTest.main(IOTest.java:5)

A) ArrayIndexOutOfBoundsException

B) NumberFormatException

C) ArithmeticException

D) ArithmeticException和ArrayIndexOutOfBoundsException

19、关于异常,下列描述正确的是()

A) try代码段和其后跟随的catch代码段之间可以有间隔代码

B) 每个catch代码段声明其能处理的一种特定类型的异常

C) finally代码段在异常出现的情况下不被执行

D) finally代码段中不可以有try和catch代码段// X

20、关于日期时间说法正确的是()

A) java.util.Date类无法表示1970年1月1日00:00:00之前的时间

B) 要得到日历类的实例,我们唯一的做法是new GregorianCalendar()

C) 日历类可以自动处理闰年

D) 使用Date类是操纵日期时间数据的最好方法

21、要将字符串"2008年8月8日20:00:00"解析成Date实例,SimpleDateFormat的格式

模板应该是()

A) yyyy-MM-dd hh:mm:ss B) yyyy-mm-dd HH:MM:SS

C) yyyy年M月d日hh时mm分ss秒D) yyyy年M月d日hh:mm:ss

22、关于集合框架,说法不正确的是()

A) 与数组不同,集合框架是容量可变的容器

B) 集合框架不能保存基本类型,但是可以将它们转换为包装类后保存

C) 集合框架中的List, Set, Map接口都是Collection接口的子接口

D) 集合类除了提供可变容量的存储外,还提供了对数据的算法

23、对保存在List中的数据进行查找,方法不正确的是()

A) 对元素进行遍历,依次比较

B) 对内容有序的List可以进行二分法查找

C) 调用indexOf方法查找

D) 无论是否有序都可以用二分法查找,比线性查找快很多

24、如果要按照特定顺序保存元素,应当使用的容器是()

A) HashMap B) ArrayList

C) JFrame D) TreeSet

25、有一个名为myList的ArrayList实例,取得其最后一个元素的方法是()

A) myList.get(0); B) myList.get(http://www.wendangku.net/doc/2411a95aaa114431b90d6c85ec3a87c240288a0c.htmlst());

C) myList.get(myList.size()); D) myList.get(myList.size()-1);

26、有一个名为myList的ArrayList实例,调用mylist.get(0)的结果是( )

A) 正确取得其第一个元素B) 返回数字0

C) 可能产生异常D) 以上都不正确

27、要保证被装入Set的元素不会重复,需要元素的类型正确实现( )方法

A) equals B) hashCode

C) toString D) finalize

28、当试图编译并运行下面程序时会出现什么结果()

class A{

public int getNumber(int a){

return a+1;

}

}

class B extends A{

public int getNumber(int a, char c){

return a+2;

}

public static void main(String[] args){

B b=new B();

System.out.println(b.getNumber(0));

}

}

A) 编译错误B) 运行错误

C) 1 D) 2

29、当编译并运行下面程序时会出现什么结果()

public class MyAr{

public static void main(String argv[]){

int[] i = new int[5];

System.out.println(i[5]);

}

}

A) 编译出错B) 运行出错

C) 输出0 D) 输出“null”

30、要将内存中的一首MP3音乐的数据保存到磁盘上,应当使用什么流()

A) FileWriter B) BufferedWriter

C) FileOutputStream D) ObjectOutputStream

31、编写一个通信软件,要求能将数据可靠地传输,应当使用的是()

A) ServerSocket和Socket B) DatagramSocket和DatagramPacket

C) URL和URLConnection D) DNS和HTTPStream

32、当编译并运行下面程序时会发生什么结果()

public class Bground extends Thread{

public static void main(String argv[]){

Bground b = new Bground();

b.run();//start

}

public void start(){

for (int i = 0; i <10; i++){

System.out.println("Value of i = " + i);

}

}

}

A)编译错误,指明run方法没有定义B) 运行错误,指明run方法没有定义

C) 编译通过并输出0到9 D) 编译通过但无输出

33、java程序的代码片断如下,编译运行后的输出结果是()

char c='a'; //'a'的ASCII码为97

int i=c;

float f=i++;

byte b=(byte)(f+1);

System.out.println(c+" "+i+" "+f+" "+b);

A、a 97 98.0 99

B、a 97 97 98

C、a 98 97.0 98

D、a 98 97 98

34、将对象序列化,要实现哪个接口()

A) Cloneable B) Runnable

C) Serializable D) Comparator

35、有以下Java程序代码,运行结果是()

public class Test{

public static String output=""; //134

public static void foo(int i){

try {

if(i==1){

throw new Exception();

}

output +="1";

} catch(Exception e){

output+="2";

return;

} finally{

output+="3";

}

output+="4";

}

public static void main(String args[]){

foo(0);

foo(1);

System.out.println(output);

}

}

A) 1342 B) 123

C) 134234 D) 13423

36、在JAVA中,( )接口位于集合框架的顶层

A) Collection B) Collections

C) Map D) Set

37、启动一个线程,应调用什么方法()

A) start B) run

C) begin D) notify

38、已定义两个接口B和C,要定义一个类同时实现这两个接口,正确的是()

A) interface A extends B,C B) interface A implements B,C

C) class A implements B,C D) class A implements B,implements C

39、在Java中,以下定义数组的语句正确的是()

A、int t[10]=new int[];

B、char a[]="hefg";

C、int t[]=new int[10];

D、double d=new double[10];

40、下面关于继承的叙述正确的是()(多选)

A. 在JAVA里只允许单一继承

B. 在JAVA里一个类只能实现一个接口

C. JAVA可以多继承

D. JAVA的单一继承避免了菱形继承的危险

41、下面哪些接口直接继承自Collection接口()(多选)

A.List

B.Map

C.Set

D.Iterator

42、研究下面的JAVA代码,输出结果将是()

public class TestException {

public static void main(String[] args) {

int a[] = {0,1,2,3,4};

int sum=0;

try{

for(int i=0;i<6;i++)

{

sum+=a[i];

}

System.out.println("sum="+sum);

}catch(http://www.wendangku.net/doc/2411a95aaa114431b90d6c85ec3a87c240288a0c.htmlng.ArrayIndexOutOfBoundsException e){ System.out.println("数组下标越界");

}finally{

System.out.println("程序结束");

}

}

}

A. 10 数组下标越界程序结束

B. 10 程序结束

C. 数组下标越界程序结束

D. 程序结束

43、研究下面的JAVA代码,输出结果将是()

public class TestException {

public static void main(String[] args) {

try{

System.out.println("hello,jr");

System.exit(0);

}finally{

System.out.println("88");

}

}

}

A. hello,jr

B. 88

C. hello,jr后是88

D. 不能编译

44、研究下面的JAVA代码,输出结果将是()

public class Test {

String s = "nba";

public void test(String s)

{

System.out.println("s:"+s);

System.out.println("this.s:"+this.s);

this.s=s;

System.out.println("s:"+s);

System.out.println("this.s:"+this.s);

}

public static void main(String[] args) {

new Test().test("cba");

}

}

A. s:cba this.s:nba s:cba this.s:nba

B. s:nba this.s:nba s:nba this.s:nba

C. s:cba this.s:nba s:cba this.s:cba

D. s:nba this.s:cba s:cba this.s:cba

45、关于sleep和wait方法,下列说法不正确的是()(多选)

A. sleep必须使用在同步方法中

B. 使用wait方法后,线程需要被通知唤醒

C. wait方法用于线程之间的通讯

D. wait是Thread类的方法

E. sleep表示让线程休眠一段时间后继续运行

46、下面哪些是正确的描述了关键字synchronized()()

A、允许两个进程并行运行但其之间相互通信

B、保证任何时候只有一个线程访问关键资源

C、保证两个或多个进程同时启动和结束

D、保证两个或多个线程同时启动和结束

47、给定JAVA代码如下,关于super的用法,以下描述正确的是()

class C extends B

{

public C()

{

super();

}

}

A、用来调用类B中定义的super()方法

B、用来调用类C中定义的super()方法

C、用来调用类B中的无参构造方法

D、用来调用类B中第一个出现的构造方法

48、关于线程,以下说法正确的是()(多选)

A. sleep方法执行时会释放对象锁。

B. wait方法执行时会释放对象锁。

C. sleep方法必须写在同步方法或同步块中

D. wait方法必须写在同步方法或同步块中

49、给定java代码,如下:编译运行,结果是()(选择一项)

public static void main (String [] args){

String s;

JavaSe内部测试笔试题

JavaSe内部测试笔试题