判断题

1.一个类定义了一个或多个构造方法,则Java不提供默认的构造方法( )
2.如果定义的类中没有给出构造方法,系统也不会提供构造方法。( )
3.可以通过类名直接访问类变量( )
4.非static修饰的方法既能被对象调用,又能用类名直接调用( )
5.static修饰的类方法既能被对象调用,又能用类名直接调用( )
6.一个类的所有对象共享static修饰的类变量( )
7.类由两部分组成,一部分是变量的定义,一部分是方法的定义( )
8.方法的定义由方法的声明和方法体等两部分组成( )
9.方法中的形参可以和方法所属类的属性(域)同名( )
10.package语句只能放到Java源程序除注释之外的第一行位置( )
11.Java应用程序的入口main方法只有一种定义( )
12.静态成员域具有全局作用域范围( )
13.类成员变量可无须初始化,由系统自动进行初始化( )
14.在类体部分定义时,类的构造方法、成员域和成员方法的出现顺序在语法上有严格限制( )
15.类的实例对象的生命周期包括实例对象的创建、使用、废弃、垃圾的回收( )

选择题

1.下述哪个说法是不正确的( )
A. 局部变量在使用之前无须初始化,因为有该变量类型的默认值
B. 类成员变量由系统自动进行初始化
C. 参数的作用域就是所在的方法
D. for语句中定义的变量,当for语句执行完时,该变量就消亡了
2.下述哪一个关键字不是类及类成员的访问控制符( )
A. public B. private C. static D. protected
3.考虑以下的方法头声明:

public void myMethod(int num, char letter)  

下列哪个描述是正确的?( )
A. 这个方法有个int型的参数,它的形式参数是letter
B. 这个方法有个int型的参数,它的形式参数是num
C. 这个方法有个char型的参数,它的实际参数是myMethod
D. 这个方法是一个构造方法
4.下面哪一项不是构造方法的特点( )
A. 构造方法名必须与类名相同
B. 构造方法不具有任何返回类型
C. 任何一个类都含有构造方法
D. 构造方法修饰词只能是public
5.final关键字不可以用来修饰( )
A.类 B.成员方法 C.成员变量 D.接口
6.下列选项中,用于声明包名的关键字是( )
A. import B. package C. interface D. protected
7.某类的成员方法只能被自己调用,修饰该方法的是( )
A. public B. protected C.private D. 无需修饰
8.下面关于变量的说法,哪个是不正确的( )
A. 实例变量是类的成员变量
B. 实例变量用关键字static声明
C. 在方法中定义的局部变量在该方法被执行时创建
D. 局部变量在使用前必须被初始化
9.在Java中,以下哪一个关键字使类不能派生出子类( )
A. final B. public C. private D. volatile
10.关于 public static void main方法的参数描述不正确的是( )
A. String args[] B. String[] args C. String a[] D. String args

程序阅读题

1.写出下面程序代码的运行结果

class StaticTest{  
  static int x=1;
  int y;
  StaticTest(){
    y++;
  }
  public static void main(String args[]){
    StaticTest st=new StaticTest();
    System.out.println("x="+x);
    System.out.println("st.y="+st.y);
    st=new StaticTest();
    System.out.println("x="+x);
    System.out.println("st.y="+st.y);
  }
  static{
    x++;
  }
}

2.写出下列程序代码的运行结果:

class Test{  
  public static String ss="杭州电子科技大学";
  public String ms="计算机学院";
  public void printInfo(){
    System.out.println("ss="+ss+"ms="+ms);
  }
  public static void main(String[] args){
    Test obj1,obj2;
    obj1=new Test();
    obj2=new Test();
    obj1.ss="浙江工业大学";
    obj1.ms=“软件学院";
    obj1.printInfo();
    obj2.printInfo();
  }
}

答案

判断题

T F T F T T T T T T T T T F T

选择题

1-5 ACBDD 6-10 BCBAD

程序阅读题

1。
x=2
st.y=1
x=2
st.y=1

2。
ss=浙江工业大学ms=软件学院
ss=浙江工业大学ms=计算机学院

注:本博客内容节选自高飞编著的Java程序设计实用教程习题集 ,详细内容请参阅书籍。