一. 选择题(234)
1.下面中哪两个可以在A的子类中使用:( A,C)
class A {
    protected int method1 (int a, int b) {
      return 0;
    }
}
A. public int method 1 (int a, int b) { return 0; }
B. private int method1 (int a, int b) { return 0; }
C. private int method1 (int a, long b) { return 0; }
D. public short method1 (int a, int b) { return 0; }
2.Abstract method cannot be static. True or False ? (A)
A .True            B.False
3.What will be the output when you compile and execute the following program.
class Base  {
  void test() {
      System.out.println("st()");
  }
}
public class Child extends Base {
  void test() {
    System.out.println("st()");
unequal  }
  static public void main(String[] a) {
    Child anObj = new Child();
    Base baseObj = (Base)anObj;
    st();
  }
}
Select most appropriate answer. A
A. st()    st()  B. st()  st()  C. st()  D. st()
4.What will be the output when you compile and execute the following program.
class Base {
  static void test() {
    System.out.println("st()");
  }
}
public class Child extends Base {
    void test() {
      System.out.println("st()");
      st(); //Call the parent method
  }
  static public void main(String[] a) {
    new Child().test();
  }
}
Select most appropriate answer. C
A. st()  st()            B. st()  st()
C. Compilation error. Cannot override a static method by an instance method
D. Runtime error. Cannot override a static method by an instance method
5.What will be the output when you compile and execute the following program.
public class Base{
  private void test() {
    System.out.println(6 + 6 + "(Result)");
  }
  static public void main(String[] a) {
      new Base().test();
  }
}
Select most appropriate answer.    B
A. 66(Result)      B. 12(Result)
C. Runtime Error.Incompatible type for +. Can't convert an int to a string.
D. Compilation Error.Incompatible type for +. Can't add a string to an int.
6..What will be the output when you compile and execute the following program. The symbol ’
.’ means space.
public class Base{
private void test() {
  String aStr = ".One.";
  String bStr = aStr;
  UpperCase();
  im();
  System.out.println("[" + aStr + "," + bStr + "]");
static public void main(String[] a) {
  new Base().test();
}
}
Select most appropriate answer.  E
A .[ONE,.One.]  B. [.One.,One]  C. [ONE,One]  D. [ONE,ONE]  E. [.One.,.One.]
7.下面关于变量及其范围的陈述哪些是不正确的(B ):
A.实例变量是类的成员变量 )
B.实例变量用关键字static声明 (用static修饰的变量称之为类变量或者静态变量)
C.在方法中定义的局部变量在该方法被执行时创建 (方法加载的时候创建局部变量)
D.局部变量在使用前必须被初始化 (必须被赋值)
8.下列关于修饰符混用的说法,错误的是( D):
A.abstract不能与final并列修饰同一个类
B.abstract类中可以有private的成员
C.abstract方法必须在abstract类中
D.static方法中能处理非static的属性 (静态方法中不能引用非静态的成员)
9.执行完以下代码int [ ] x = new int[25];后,以下哪项说明是正确的(A): X属于引用类型,该引用类型的每一个成员是int类型,默认值为0;
A、 x[24]为0  B、 x[24]未定义  C、 x[25]为0  D、 x[0]为空
10.编译运行以下程序后,关于输出结果的说明正确的是 ( C):
public class Conditional{
    public static void main(String args[ ]){
      int x=4;
      System.out.println(“value is “+ ((x>4) ? 99.9 :9));
    }
}
A、 输出结果为:value is 99.99      B、 输出结果为:value is 9
C、 输出结果为:value is 9.0        D、 编译错误
11.关于以下application的说明,正确的是(C ): 自由块是类加载的时候就会被自动执行到的,自由块的执行顺序是按照在类中出现的先后顺序执行;
class StaticStuff  {
3. static int x=10;
4. static { x+=5;}
5. public static void main(String args[ ]) {
7. System.out.println(“x=” + x);
8. }
9. static { x/=3;}
10. }
A、 4行与9行不能通过编译,因为缺少方法名和返回类型
B、 9行不能通过编译,因为只能有一个静态初始化器
C、 编译通过,执行结果为:x=5
D、编译通过,执行结果为:x=3
12.关于以下程序代码的说明正确的是( D):
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、5行不能通过编译,因为引用了私有静态变量
B、10行不能通过编译,因为x是私有静态变量
C、程序通过编译,输出结果为:x=103
D、程序通过编译,输出结果为:x=102
13.下列说法正确的有(C) 构造方法的作用是在实例化对象的时候给数据成员进行初始化;
A. class中的constructor不可省略
B. constructor必须与class同名,但方法不能与class同名 (构造方法与类同名,类中可以有和类名相同的方法)
C. constructor在一个对象被new时执行
D.一个class只能定义一个constructor (构造方法可以重载)

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