Java程序设计 样题
单选题
1:在使用interface声明一个接口时,只可以使用( )修饰符修饰该接口。( 2 分)
A:public
B:protected
C:private protected
D:private
答案:A
2:定义一个常量用到的关键字是( )。( 2 分)
A:finally
B:fianl
C:const
D:#define
答案:B
3:下面( )是Java语言中正确的标识符。( 2 分)
A:3com
B:import
C:that
D:this
答案:C
4:在线程被实例化之后,可以通过调用( )方法使它转入可运行状态。( 2 分)
A:start
B:run
C:begin
D:do
答案:A
5:以下JSP脚本理解错误的是( )。( 2 分)
A:JSP 脚本元素允许将Java代码插入到JSP即将生成的servlet中。
B:〈%=Expression %〉形式的表达式, 将其值插入到servlet的输出中
C:〈% code %〉形式的scriptlet,它被插入到servlet的_jspService方法中
D:〈%!code %〉形式的注释,插入到servlet类中,通常用于提供注释
答案:D
6:初始的HSB表示( )。( 2 分)
A:Hue Saturation Brightness
B:Hue Shadows Balance
C:Han in the Sky with Diamonds
D:以上都不对
答案:A
7:编译运行以下程序后,关于输出结果的说明正确的是 ( )。
public class C{ public static void main(String args[ ]){ int x=0; System.out.println(“value is “+ ((x〉0) ?1.0 :0)); } }( 2 分)
A:输出结果为:value is 1.0
B:输出结果为:value is 0
C:输出结果为:value is 0.0
D:编译错误
答案:C
8:下面有关main()方法声明时,可以改动的是( )。( 2 分)
A:public
B:static
C:void
D:args
答案:D
9:SQL语句如下: UPDATE chenji SET name=’andy’,age=28,gender=’M’ WHERE ID=’ 16’ 它完成的功能是( )。( 2 分)
A:将name=’andy’的记录ID值改为16
B:将age=28的记录ID值改为16
C:将name=’andy’且age=28、gender=’M’的记录的ID值改为16
D:将ID=16的记录name值改为andy、age值改为28、gender值改为M
答案:D
10:while循环和do…while循环的区别是( )。( 2 分)
A:没有区别,这两个结构任何情况下效果都一样
B:while比do…while循环执行效力高
C:while循环是先循环后判断,所以循环至少被执行一次
D:do…while循环是先循环后判断,所以循环至少被执行一次
答案:D
11:下面( )描述是正确的。( 2 分)
A:Applet程序中不需要main()方法,也不能有
B:Application程序中可以没有main()方法。
C:Applet程序中可以不定义init( )方法
D:Application程序中必须有run( )方法
答案:C
12:当Frame改变大小时,放在其中的按钮大小不变,则使用如下( )layout。( 2 分)
A:GridLayout
B:CardLayout
C:East and West of BorderLayout
D:FlowLayout
答案:C
13: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 void main(String arg[]) {
10) Parent p = new Parent();
11) }
12) }( )行将引起错误。( 2 分)
A:第3行
B:第6行
C:第8行
D:第9行
答案:C
14:对成员的访问控制保护最强的是( )。( 2 分)
A:public
B:缺省
C:private
D:protected
答案:C
15:有继承关系时用到的关键字是( )。( 3 分)
A:extend
B:extends
C:implements
D:implement
答案:B
16:下面( )是java语言中的关键字。( 3 分)
A:sizeof
B:abstract
C:NULL
D:Native
答案:B
17:类Teacher和Student是类Person的子类; Person p; Teacher t; Student s; //p, t and s are all non-null. if(t instanceof Person) { s = (Student)t; } 最后一句语句的结果是( )。( 3 分)
A:将构造一个Student对象;
B:表达式是合法的;
C:表达式是错误的;
D:编译时正确,但运行时错误。
答案:C
18:关于以下application的说明,正确的是( )。
1. class StaticStuff 2. { 3. static int x=10; 4. static { x+=5;} 5. public static void main(String args[ ]) 6. { 7. System.out.println(“x=” + x); 8. } 9. static { x/=3;} 10. }( 3 分)
A:4行与9行不能通过编译,因为缺少方法名和返回类型
B:9行不能通过编译,因为只能有一个静态初始化器
C:编译通过,执行结果为:x=5
D:编译通过,执行结果为:x=3
答案:C
19:给出下面一段程序,选择运行结果:
public class X{
public static void main(String [] args){
String names[]=new String[5];
for(int x=0;x〈args.length;x++) names[x]=args[x];
System.out.println(names[2]);
}}
命令行执行: java X a b 结果是( )。( 3 分)
A:names
B:b
C:null
D:运行出现异常
答案:C
20:下面( )是对字符串String的正确定义。( 3 分)
A:String s1=null;
B:String s2=’null’ ;
C:String s3=(String) ‘abc’ ;
D:String s4=(String) ‘\uface’;
答案:A
多选题
21:下列( )说法是正确的。( 2 分)
A:Java 语言只允许单一继承
B:Java 语言只允许实现一个接口
C:Java 语言不允许同时继承一个类并实现一个接口
D:Java 语言的单一继承使得代码更加可靠
答案:AD
22:以下( )不是Java的关键字。( 2 分)
A:FALSE
B:const
C:Double
D:void
答案:ABC
23:下列关于finally说法错误的是( )。( 2 分)
A:finally语句应该放在所有例外控制器的最前面
B:如果程序在前面的例外控制器中匹配到了合适例外,就不再执行finally 语句了
C:无论程序是否找到合适的例外控制器,都会去执行finally语句
D:如果程序在前面的例外控制器中匹配到了多个合适的例外,就不再执行finally语句了
答案:ABD
24:下列( )方法可以使线程停止。( 2 分)
A:close()
B:interrupt()
C:stop()
D:suspend
答案:CD
25:HttpServlet类中定义了Servlet对象必须实现( )。( 2 分)
A:Stop()
B:Init()
C:Service()
D:Destroy()
答案:BCD
26:main()方法是应用程序的入口,它前面的( )关键字不能改变。( 2 分)
A:public
B:static
C:void
D:以上关键字都可改变
答案:ABC
27:执行下列代码后,( )结论是正确的。
String[] s=new String[10];( 2 分)
A:s[10] 为 "";
B:s[9] 为 null;
C:s[0] 为 未定义
D:s.length 为10
答案:BD
28:定义一个类名为"MyClass.java"的类,并且该类可被一个工程中的所有类访问,那么该类的正确声明应为( )。( 2 分)
A:private class MyClass extends Object
B:class MyClass extends Object
C:public class MyClass
D:public class MyClass extends Object
答案:BCD
29:执行下列代码后,( )结论是正确的。 String[] s=new String[15];( 3 分)
A:s[15] 为 "";
B:s[14] 为 null;
C:s[0] 为未定义
D:s.length 为15
答案:BD
30:下列( )方法是Connection对象所具有的方法。( 3 分)
A:executeUpdate()
B:createStatement()
C:preparedStatement()
D:PrepareCall()
答案:BCD
31:下面( )方法是Reader类和InputStream类都具有的方法。( 3 分)
A:read()
B:reset()
C:close()
D:flush()
答案:ABC
32:上转型对象具有如下( )特点。( 3 分)
A:上转型对象不能操作子类新增的成员变量(相当于失掉了这部分属性)、不能使用子类新增的方法(相当于失掉了一些功能)。
B:上转型对象可以操作子类继承或覆盖的成员变量,也可以使用子类继承的或覆盖的方法。
C:如果子类覆盖了父类的某个方法后,当对象的上转型对象调用这个方法时一定是调用了这个覆盖的方法,因为程序在运行时知道,这个上转型对象的实体是子类创建的,只不过损失了一些属性和功能而已。
D:可以将父类创建的对象的引用赋值给子类声明的对象。
答案:ABC
判断题
33:File类位于java.io包中,属于流类。( 2 分)
A:正确
B:错误
答案:B
34:最终类不能派生子类,最终方法不能被覆盖。( 2 分)
A:正确
B:错误
答案:A
35:public long skip(long n)方法将指针从当前位置向后跳动n个字节。( 2 分)
A:正确
B:错误
答案:A
36:容器是用来组织其他界面成分和元素的单元,它不能嵌套其他容器。( 2 分)
A:正确
B:错误
答案:B
37:一个类可以生成多个对象,并且这些对象都具有相同的属性。( 2 分)
A:正确
B:错误
答案:A
38:Servlet是EJB中的一个子集。( 2 分)
A:正确
B:错误
答案:B
39:在Applet的生命周期中,start()方法只能被执行一次。( 2 分)
A:正确
B:错误
答案:B
40:有的类定义时可以不定义构造函数,所以构造函数不是必需的。( 2 分)
A:正确
B:错误
答案:B
41:引用一个类的属性或调用其方法,必须以这个类的对象为前缀。( 2 分)
A:正确
B:错误
答案:B
42:子类方法抛出的异常只能是父类方法抛出异常的同类或子类。( 2 分)
A:正确
B:错误
答案:A
43:equals()方法与相等操作符(==)具有相同的功能。( 3 分)
A:正确
B:错误
答案:B
44:所有的异常类都应该捕获。( 3 分)
A:正确
B:错误
答案:B
45:HttpServlet类中定义了Servlet对象必须实现的init(),Service(),destroy()等方法。( 3 分)
A:正确
B:错误
答案:B