当前位置:首页 > 2015- 2016 Java期末考试真题100道(附答案解析)
Java单选题详解
一、单选题 (本大题共100题, 小计100.0分)
1. 访问权限修饰符有public、private、protected和默认修饰符(没有写任何修饰符),他们既可以用来修饰类,也可以用来修饰类中的成员,使用private修饰符的成员可见情况有( ) A、同一类[正确选项] ; B、不同包中的子类 ; C、同一包中的非子类 ; D、同一包中的子类 ; 参照答案:A 2.下列关于变量的叙述哪个是错的?( )
A、局部变量在使用前必须被初始化 ; B、实例变量是类的成员变量 ; C、实例变量用关键字static声明;
D、在方法中定义的局部变量在该方法被执行时创建 ; 参照答案:C
在类的声明中,属性是用变量来表示的。这种变量就称为实例变量,是在类声明的内部但是在类的其他成员方法之外声明的。类的每个对象维护它自己的一份实例变量的副本。
3. 关于以下程序段,正确的说法是( )
1. String s1=”abc”+”def”;
2. String s2=new String(s1); 3. if(s1= =s2)
4. System.out.println(“= = succeeded”); 5. if (s1.equals(s2))
6. System.out.println(“.equals() succeeded”); A、行6执行,行4不执行; B、行4与行6都将执行 ; C、行4执行,行6不执行 ; D、行4、行6都不执行 ; 参照答案:A
4. 下列程序代码段运行后,变量x的结果是( ) int x=0; int y=3; switch(y){ case 1:x++; case 2:x++;x++; case 3:x++;x++;x++; case 4:x+=4; }
1
A、10 ; B、6 ; C、7; D、3 ; 参照答案:C
5. 已知A类被打包在packageA , B类被打包在packageB ,且B类被声明为public ,且有一个成员变量x被声明为protected控制方式。C类也位于packageA包,且继承了B类。则以下说法正确的是( ) A、A类的实例不能访问到B类的实例 ;
B、A类的实例能够访问到B类一个实例的x成员 ; C、C类的实例不能访问到B类的实例 ;
D、C类的实例可以访问到B类一个实例的x成员 [正确选项] ; 参照答案:D
6. 下列Java常见事件类中哪个是鼠标事件类?( ) A、WindowEvent ; B、KeyEvent ; C、InputEvent ;
D、MouseEvent [正确选项] ; 参照答案:D
7. 关于以下程序代码的说明正确的是( )
1.class HasStatic{
2. private static int x=100;
3. public static void main(String args[ ]){ 4. HasStatic hs1=new HasStatic( ); 5. hs1.x++;
6. HasStatic hs2=new HasStatic( ); 7. hs2.x++;
8. hs1=new HasStatic( ); 9. hs1.x++;
10. HasStatic.x- -;
11. System.out.println(“x=”+x); 12. } 13. }
A、程序通过编译,输出结果为:x=102 [正确选项] ; B、10行不能通过编译,因为x是私有静态变量 ; C、5行不能通过编译,因为引用了私有静态变量 ; D、程序通过编译,输出结果为:x=103 ; 参照答案:A
8. 编译运行以下程序后,关于输出结果的说明正确的是( )
public class Conditional{
public static void main(String args[ ]){ int x=4;
System.out.println(“value is “ + ((x>4) ? 99.9 :9));
2
} }
A、输出结果为:value is 99.99 ;
B、输出结果为:value is 9.0 [正确选项] ; C、编译错误 ;
D、输出结果为:value is 9 ; 参照答案:B
9. 编译运行下面的代码会发生什么( ) public class Test extends Thread { private String sThreadName;
public static void main(String argv[]) { Test h = new Test(); h.go(); }
Test() { }
Test(String s) {
sThreadName = s; }
public String getThreadName() { return sThreadName; }
public void go() {
Test first = new Test(\ first.start();
Test second = new Test(\ second.start(); }
public void start() {
for (int i = 0; i < 2; i++) {
System.out.println(getThreadName() + i); try {
Thread.sleep(100);
} catch (InterruptedException e) { System.out.println(e.getMessage()); } } } }
3
A、运行时错误 ;
B、输出first0, second0, first1, second1 ; C、编译错误 ;
D、输出first0, first1, second0, second1. [正确选项] ; 参照答案:D
说明:将 public void start() {改为: public void run() {则交替输出
10. java程序运行时,用于判定一个对象实例的类型运算符是( ) A、== ;
B、instanceof [正确选项] ; C、以上都对 ; D、 equal ; 参照答案:B
11. 下列哪一项不是Java保留字?( ) A、 abstract ;
B、sizeof [正确选项] ; C、 super ; D、 break ; 参照答案:B
12. 当处理的数据量很多,或向文件输出很多次小数据,一般使用的流是(
A、 DataOutputStream ; B、 PipedOutputStream ;
C、BufferedOutputStream [正确选项] ; D、 FileOutputStream ; 参照答案:C
13. 获取一个不包含路径的文件名的方式为( )
A、 String getPath() ;
B、 String getAbslutePath() ; C、 String getParent() ;
D、String getName() [正确选项] ; 参照答案:D
14. Java应用程序的入口方法是( ) A、main()[正确选项] ; B、 init() ; C、 paint() ; D、 start() ; 参照答案:A
15. 下列不属于FileInputStream输入流的read()成员函数的是( ) A、 int read(int line) [正确选项] ;
4
)
共分享92篇相关文档