Caution :
一.1以下哪条语句可以通过编译?(b
A.    String #name = "Jane Doe";    B.    int $age=24;
C.    Double _height = "123.5";    D.    double ~temp = 37.5;
一.2下列关于Java类的构造方法的说法中错误的是:d
A.    构造方法的名字必须与类的名字完全相同。
B.    构造方法没有返回值也不能用void修饰。
C.    父类的构造方法不能被子类继承。
D.    构造方法必须用public访问控制符修饰。
一.3给出如下代码:b
class Test {
    private int m;
    public static void fun() { /* */ }
}
如何使成员变量m被函数fun()直接访问?
A.    将private int m改为protected int m
B.    将private int m改为public int m
C.    将private int m改为static int m
D.    将private int m改为int m
一.4下面哪个函数是public void example() {...}的重载函数?b
A.    public void example() {...}
B.    public int example() {...}
C.    public void example2() {...}
D.    public int example(int m, float f) {...}
一.5在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为( c )。
A.    隐藏    B.    覆盖
C.    重载    D.    Java不支持此特性
以下程序的输出结果是()
public class Test {
    public static void main(String [] args) {   
        int x = 5;
        boolean b1 = true;
        boolean b2 = false;
        if ((x == 4) && !b2)
            System.out.print("l ");
        System.out.print("2 ");
  if ((b2 = true) && b1) //若是改成  if ((b2==true) && b1)  则只输出 2
            System.out.print("3");
    }
}
A.    2    B.    3
C.    1 2    D.    2 3
一.6关于异常处理下列说法中正确的是:B
A.    Java系统中所有异常都需要捕获处理。
B.    catch子句是通过类型匹配来捕获异常对象的。
C.    try-catch-finally结构处理完异常后结束程序的运行。
D.    异常是一种错误,所以在程序中应该完全避免异常的出现。
一.7下列关于对象类型转换的说法中正确的是:
A.    某类的对象引用只能指向它的直接子类的对象。
B.    不存在祖先与后代关系的两个类的对象之间一定不能进行类型转换。
C.    后代类的对象引用能指向其祖先类的对象。
D.    对象类型转换只有强制转换而没有自动转换。
一.8类Teacher和Student是类Person的子类,则B
Person p; Teacher t; Student s; // 设p,t和s都是非null引用
if(t instanceof Person)
  s = (Student)t;
关于最后一条语句的正确说法是:
A.    将构造一个Student对象。
B.    类型转换正确。
C.    表达式是错误的。
D.    编译时正确,但运行时错误。
一.9根据下面代码,出正确的选项。D
public class Test {
    static Object o;
    public static void main(String args[]) {
        System.out.println(o);
    }
}
A.    编译时将产生错误。    B.    编译时正确,运行时将产生错误。
C.    程序输出零。    D.    程序输出null。
关于类Foo的以下说法中正确的是()
A
class Foo {
    static void alpha() { /* more code here */ }java技术专家
    void beta() { /* more code here */ }
}
A.    在alpha()中可以直接调用beta();
B.    在beta()中可以直接调用alpha();
C.    在其中任一个方法中均可以直接调用另一个方法
D.    在其中任一个方法中均不可以直接调用另一个方法
一.10关于下面数组定义的正确说法是?D
String[][] s = new String[10][];
A.    数组s定义不合语法    B.    s是10×10的2维数组
C.    s数组的所有元素都是""    D.    s是10个数组的数组
一.11下列程序的正确输出是。A
public static void main(String[] args) {
    Scanner scanner = new Scanner("this is one that is two");
scanner.useDelimiter(" is");
    while(scanner.hasNext()) {
        System.out.());
    }
}
A.    this one that two    B.    th  one that  two
C.    thone that two    D.    this is one that is two
改错题(20分)
说明:写出每段代码的错误原因并改正错误,每小题4分,说明原因和改正各2分。
1.class First { }
import java.io.*;
package mypackage;
class Second { }
2.class A {
    String name;
    public A(String s) {
name = s;
}
}
class B extends A {
    int id;
    public B (int i) {
id = i;
}
}
3.public class B extends A {
    final void increase() {
        value += 2;
    }
}
class A {
    int value = 0;
    final void increase() {
        value += 1;
    }
}
一、程序阅读题(20分)
说明:阅读下面程序并写出它们的输出结果,每小题5分。
1.程序如下:
class Base {
    public Base() {
        System.out.println("What a pleasure!");
    }
    public Base(String s) {
      this();  //调用上面的public Base()  ???
        System.out.println("I am " + s + "!");
    }
}
public class Child extends Base {
    public static void main(String args[]) {
        Child t = new Child("Mike");
    }
    public Child(String s) {
        super(s);
        System.out.println("How do you do?");
    }
    public Child() {
        this("I am Tom");
    }
}
E:\shiyan\others>java
What a pleasure!

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。