java基础测试题及答案
一、选择题(每题2分,共40分)
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.标签
java基础测试题及答案
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、下面哪个方法是类http://.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 )
java基础测试题及答案
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.类http://ng.Class的 forName方法
二、填空题。(每空2分,共30分)
1. 编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文
件的扩展名为 类名.class 。
2.构造方法是一个特殊的方法,主要用于创建对象时初始化对象。构造
方法的方法名要求与 ___类名_____相同,而且无返回值,构造方法无返回值,并不是要在构造方
法名前加上 void 。
3.Applet的生命周期是有init()、start()、stop()、destroy()这4个方法构成的,在
程序执行过程中, init() 方法只被调用执行一次,但 start() 方法可以多次被调用执行。
4.我们把awt组件称为重量组件,而把 swing 组件称为轻量组件。在
编写swing组件的程序时,很多情况下只要在原有的awt组件的类名前面加上字母 J 。
5. 创建多线程的途径有两种:创建Thread类的子类与实现 Runable 接口。
6. 异常处理过程中,一个try程序块可以对应 多 个catch块。
7. 数据流类分为DataInputStream和 DataOutputStream 。
8. 当两个或多个线程要同时访问共享数据时,一次只允许一个线程访问共享资
源,支持这种互斥机制称为 线程锁 。
java基础测试题及答案
9. TCP 协议提供的是可靠无差错的数据传输, UDP 协议不保证数据传输的可靠性。
10、基于UDP网络程序设计中,使用Datagram
1、下面哪项可以得到数组元素的个数,java中定义数组名为 abc,( B )
A、abc.length( ) B、abc.length C、len(abc) D、ubound(abc)
2、构造方法何时被调用(B )
A.类定义时 B.创建对象时 C.调用对象方法时 D.使用对象的变量时
3、下列语句片段
int a=10,b=4,c=20,d=6;
System.out.println(a++*b+c*--d);
的结果为( C )
A.144 B.28 C.140 D.不能执行
4、下面哪个修饰符修饰的方法只能被本类中的其他方法使用( C )
A、protected B、static C、private D、public
5、编译并运行下述程序段的结果是:( A )。
public class Test{
public static void main(String argv[]){
int[] count = new int[4];
System.out.println(count[4]);
}
}
A.编译时错误 B.运行时错误 C.输出0 D.输出null
6、下列说法不正确的是( B )
A. IOException必须被捕获或抛出
B. java语言会自动初始化变量的值
C. java语言不允许同时继承一个类并实现一个接口
D. java语言会自动回收内存中的垃圾
7、在java的一个异常处理中,哪个语句块可以有多个 ( A )
A、catch B、finally C、try D、throws
8、若在某一个类定义中定义有如下的方法: final void aFinalFunction( );
则该方法属于( C )。
A.本地方法 B.静态方法 C.最终方法 D.抽象方法
9、类Test1定义如下:
1) public class Test1{
2) public float aMethod(float a, float b){ }
java基础测试题及答案
3)
4) }
将以下哪种方法插入行3是不合法的。( B )
A、public float aMethod(float a, float b, float c){ }
B、public float aMethod(float c, float d){ }
C、public int aMethod(int a, int b){ }
D、private float aMethod(int a, int b, int c){ }
10、如果希望所有的控件在界面上均匀排列,应使用下列那种布局管理器?
( B )
A、BoxLayout B、GridLayout C、BorderLayout D、FlowLayout
11、哪个关键字可以对对象加互斥锁? ( B )
A、 transient B、 synchronized C、 serialize D、 static
12、Java程序的执行过程中用到一套JDK工具,其中java.exe是指( B )
A.Java文档生成器 B.Java解释器
C.Java编译器 D.Java类分解器
13、下面哪个不是Thread类的方法?( C )
A.yield() B.sleep(long msec) C.go() D.stop()
14、为实现多线程之间的通信,需要使用下列哪种流才合适( D )
A.Filter stream B. File stream C. Random access stream D. Piped stream
15、在异常处理中,如释放资源、关闭文件、关闭数据库等由( C )来完成。
A.try子句 B.catch子句 C.finally子句 D.throw子句
16、定义一个类名为“MyClass.java”的类,并且该类可被一个工程中的所有类
访问,那么该类的正确声明应为:(C)
A. private class MyClass extends Object
B. class MyClass extends Object
C. public class MyClass
D. protected class MyClass extends Object
17、给出如下代码:
class Test{
private int m;
public static void fun() {
// some code...
}
}
如何使成员变量m 被函数fun()直接访问? ( C )
A、将private int m 改为protected int m
java基础测试题及答案
B、将private int m 改为 public int m
C、将private int m 改为 static int m
D、将private int m 改为 int m
18、对象使用时,下面描述错误的是( B )
A.通过“.”运算符调用成员变量和方法
B.通过成员变量的访问权限设定限制自身对这些变量方法的调用
C.将一个对象申明为类的成员时,必须在使用前为其分配内存
D.在方法中使用对象作为参数时,采用引用调用
19、下面代码哪行会引起错误? ( D )
1) class Parent {
2) private String name;
3) public Parent(){}
4) }
5) public class Child extends Parent {
6) private String department;
7) public Child() {}
8) public String getValue(){ return name; }
9) public static void main(String arg[]) {
10) Parent p = new Parent();
11) }
12) }
A、 第3行 B、 第6行 C、 第7行 D、 第8行
20、下面关于Applet的说法正确的是 ( C )
A、 Applet也需要main方法
B、 Applet必须继承自java.awt.Applet
C、 Applet能访问本地文件
D、 Applet程序不需要编译
二、填空题。(每空2分,共30分)
2. Java程序在extends之后只能有一个父类,即extends只能实现 1 继
承。 2.面向对象的3个特性是
3.在java.awt包中定义了三种界面布局策略,它们分别是: BorderLayout、
FlowLayoutGridLayout。
4.每个线程都经历创建、就绪、运行5个状态。
5. 在java.io包中有4个基本抽象基类:分别是、OutputStream、Reader及
java基础测试题及答案
6.在TCP/IP中,套接字是由SOCK_STREAM与SOCK_RAW 组合而成。
7.在http://包中,IP地址由一个称为InetAddress的特殊的类来描述。
8.在http://包中提供了两个类DatagramSocket和DatagramPacket,
用来支持数据包通信。
9、在建立套接字连接过程中,通常把负责监听的一方称为服务器端。
10、JDBC进行数据库编程需要的几个步骤为:加载驱动程序、接 、向数据库发送SQL语句并处理结果、关闭数据库连接。