java基础和高级测试题 联系客服

发布时间 : 星期一 文章java基础和高级测试题更新完毕开始阅读41d39b36590216fc700abb68a98271fe910eaf0e

一、选择题

1、下面哪个是Java语言中正确的标识符( C ) A、3com B、import C、that D、this

2、下面哪个语句(初始化数组)是不正确的:( B )

A.int x[] = {1,2,3}; B.int x[3] = {1,2,3};

C.int[] x = {1,2,3}; D.int x[] = new int[]{1,2,3}; 3、下述概念中不属于面向对象方法的是( D )。

A.对象、消息 B.继承、多态 C.类、封装 D.过程调用 4、下面的代码段中,执行之后i 和j 的值是什么? ( B )

int i = 1; int j; j = i++*2+3*--i;

A.1, 2 B.1, 5 C. 2, 1 D. 2, 2

5、下面哪条语句把方法声明为抽象的公共方法?( B ) A.public abstract method(); B.public abstract void method(); C.public abstract void method(){}

D.public void method() extends abstract;

6、下面关于java中类的说法哪个是不正确的?( C )

A.类体中只能有变量定义和成员方法的定义,不能有其他语句。 B.构造函数是类中的特殊方法。

C.类一定要声明为public的,才可以执行。 D.一个java文件中可以有多个class定义。

7、假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的?( C ) class A {

int i; static String s; void method1() { }

static void method2() { } }

A、System.out.println(a.i); B、a.method1(); C、A.method1(); D、A.method2(); 8、容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小 的变化而改变? ( B )

A、 CardLayout B、 FlowLayout C、 BorderLayout D、 GridLayout 9、下列哪个用户图形界面组件在软件安装程序中是常见的? ( C ) A.滑块 B.进度条 C.按钮 D.标签

10、在Java 中如果要在字符串类型对象s=“JAVA”,中找出?V?出现的位置可使用下面哪个方法:(B)

A.mid(2,s); B.charAt(2); C.s.indexOf(?V?); D.indexOf(s,?V?); 11、Java中哪个类提供了随机访问文件的功能。( A )

A. RandomAccessFile类 B. RandomFile类 C. File类 D. AccessFile类

12、下面哪个方法是类java.net.Socket的成员方法,用来获取Socket的输入流。( C )

A.getChannel() B.getConnetion() C.getInputStream() D.getStream()

13、给出下面代码: public class Person{

static int arr[] = new int[10]; public static void main(String a[]) { System.out.println(arr[1]); } }

哪个语句是正确的? ( B )

A.编译时将产生错误; B.输出零; C.编译时正确,运行时将产生错误; D.输出空。 14、A派生出子类B ,B派生出子类C,并且在Java源代码中有如下声明: 1) A a0=new A(); 2) A a1 =new B(); 3) A a2=new C();

问以下哪个说法是正确的? ( D ) A.只有第1行能通过编译

B.第1、2行能通过编译,但第3行编译出错

C.第1、2、3行能通过编译,但第2、3行运行时出错 D.第1行、第2行和第3行的声明都是正确的

15、下列哪个方法可用于创建一个可运行的类( A )

A. public class X implements Runable{ public void run(){......} } B. public class X implements Thread{ public void run(){......} } C. public class X implements Thread{ public int run(){......} }

D. public class X implements Runable{ protected void run(){......} }

16、哪个关键字可以抛出异常? ( C )

A、 transient B、 finally C、 throw D、 static

17、如果类中的成员变量可以被同一包访问,则使用如下哪个修饰符?( C ) A、 private B、public C、protected D、no modifier 18、Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点( B ) A.安全性 B.多线程 C.跨平台 D.可移植 19、编译并运行以下程序段的结果是:( A ) public class MyClass{

final static int i; MyClass(){i =0;}

public static void main(String args[]){ System.out.println(i); } }

A.编译出错 B、 null C、1 D、0

20、下列哪个方法可以用来加载JDBC驱动程序?( D) A.类java.sql.DriverManager的 getDriver方法 B.类java.sql.DriverManager的getDrivers方法 C.类java.sql.Driver 的connect方法 D.类java.lang.Class的 forName方法

21、已知一个引用类型变量myvar指向了一个流对象,在程序中出现了如下语句

myvar.flush(); myvar.close(); 则

myvar所指向的对象一定是: (B)

A) 输入流 B) 输出流 C) 字符流 D) 字节流 22、下面关于ServerSocket的描述错误的是: (D)

A) ServerSocket表示服务器端的倾听Socket,等待客户机发起TCP连接。

B) ServerSocket仅用于监听客户端的发起的连接请求,一旦受到客户端请求即返回一个Socket与客户端通信。 ServerSocket并不负责与客户单通信。

C) ServerSocket通过accept()方法监听等待客户端的请求,未收到客户端的连接请求之前当前线程处于阻塞状态。

D) 一个ServerSocket只能在一个端口监听,因此一个ServerSocket只能接收到一个客户端请求。

23、关于字符流的说法正确的是: (B)

A) 字符流是双字节流,因此使用字节流读取两次与与字符流读取一次的效果完全一致。 B) 字符流会涉及字符编码的转换。 C) 通过字符流可以复制word文档。

D) 通过字符流将文本写入文件,则文件中的编码一定是双字节编码。 24、下面有关Java线程的说法正确的是: (B) A) wait()方法是Thread类特有的方法。 B) 任何对象都有wait()方法。

C) 任何情况下都可以调用任何对象的wait()方法,使当前线程等待。 D) 只有锁对象有notify()方法,其它对象没有该方法。

25、在Java中按输入和输出方向可以将流分为哪几类? (A) A) 输入流和输出流 B) 字节流和字符流 C) 节点流和处理流 D) 对象流和数据流

26、下面关于Java主线程的说法错误的是: (D) A) 主方法所在的线程即主线程。

B) 在多线程应用中,主线程的主要作用是启动其它线程。 C) 主线程与其它线程是平等的。 D) 主线程结束,整个应用将结束。

27、下面哪一个不属于多线程相较于多进程的特点? (D) A) 基于线程应用所需的开销较小。 B) 线程间的通信和切换成本较低。 C) 线程共享进程的地址空间。 D) 线程可以并行。

28、通过ObjectInputStream的readObject()方法读取数据,如何判断流结尾? (D) A) 返回-1表示流结尾。 B) 返回null表示流结尾。 C) 返回2表示流结尾。 D) 遇到流结尾将抛出异常。

29、下面有关线性表说法正确的是: (A) A) 线性表是由若干数据元素构成的有限序列。 B) 线性表在存储结构是线性顺序存储。 C) 栈不是线性表。 D) 以上都不正确。

30、下面关于线程同步的说法正确的是: (ABC)

A) 线程同步是指在访问共享资源时多个线程相互间的协调和控制 B) 通过线程同步可以实现多线程对共享资源有序可控访问 C) 通过线程同步可以保障共享资源数据安全、避免死锁。 D) 通过线程同步可以大大提高线程并发性能。

31、下面关于Java线程的join()方法叙述正确的是: (ABC) A) join()方法是Thread类的实例方法。

B) A线程调用B线程的join()方法将使A线程等待B线程执行完毕后A线程才可以继续执行。 C) A线程调用B线程的join()方法将使A线程进入阻塞状态。

D) A线程调用B线程的join()方法,A线程等待B线程执行完毕,而恰好B线程随后又执行了sleep()方法,这种情况下A线程将可以继续执行。 32、下面那些流是处理流? (BD) A) FileWriter

B) InputStreamReader C) FileOutputStream D) OjbectOuputStream

33、下面关于线程的说法正确的是: (CD) A) 线程内部仍有可能存在并行的控制流。

B) 多线程是指在一个进程或多个进程中的多个并行的指令序列。 C) 多线程共享同一进程。

D) 多个浏览器同时访问同一个JavaWeb应用,将在JavaWeb服务器上引发多个线程。 34、下面关于Java线程的sleep()方法叙述错误的是: (D) A) sleep()方法是Thread类的静态方法。

B) sleep()方法的作用是使当前线程睡眠一段时间。 C) 调用sleep()方法将使当前线程处于阻塞状态。 D) 调用sleep()方法不必异常处理。

35、JDK提供的XML解析器有哪些? (AB) A) DOM解析器 B) SAX解析器 C) DOM4J D) JDOM

36、下面关于XML说法正确的是: (ABCD) A) XML是标记语言

B) XML标记大小写是敏感的。 C) XML标记必须有结束标记。

D) XML可以用于数据传输格式标准。 二、简单题

1、 判断101-200之间有多少个素数,并输出所有素数。 2、 有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月

又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少? 3、 输入两个正整数m和n,求其最大公约数和最小公倍数。

4、 求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222。 5、 一个数如果恰好等于它的因子之和,这个数就称为\完数\。例如6=1+2+3.编程找出

1000以内的所有完数。 6、 输出9*9口诀。

7、 打印出如下图案(菱形) * *** ****** ******** ****** *** *。 8、 求一个3*3矩阵对角线元素之和。