JAVA第四章类与对象题1
一.单选题
1
分析如下所示的Java 代码,关于其中this 关键字的说法正确的是( )
public class Test {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name; //this 关键字所在的行
}
}
A、
this的值是name 属性的值
B、
this指代调用setName方法的当前对象
C、
this表示任何Test类的对象
D、
此处可以省略不写
正确答案: B 我的答案:B
2、下列哪个叙述是正确的?
A、
成员变量的名字不可以和局部变量的相同。
B、
方法的参数的名字可以和方法中声明的局部变量的名字相同。
C、
成员变量没有默认值。
D、
局部变量没有默认值。
正确答案: D 我的答案:D
答案解析:
class A{
public static void main(String a[]){
int i;
System.out.println("i="+i);//编译会出错,错误提示信息为:可能尚未初始化变量i
}
}
所以对于java程序中的局部变量,第一次使用之前一定要确保它已经被明确地赋了值。
3、下列关于构造方法的叙述中,错误的是( )
A、
Java 语言规定构造方法名与类名必须相同
B、
Java 语言规定构造方法没有返回值,且不用void 声明
C、
Java 语言规定构造方法不可以重载,即一个类只能有一个构造方法
D、
构造方法可通过new关键字来调用
正确答案: C 我的答案:C
4、对于下列Hello类,哪个叙述是正确的?
class Hello {
Hello(int m){
}
int Hello() {
return 20;
}
hello() {
}
}
A、Hello类有2个构造方法。
B、Hello类的int Hello()方法是错误的方法。
C、Hello类没有构造方法。
D、Hello无法通过编译,因为其中的hello方法的方法声明有错误(没有返回类型)。
正确答案: D 我的答案:D
答案解析:class Hello {
//这是构造方法
Hello(int m){
}
//编译器把这个方法认定为类中的成员方法,而不是构造方法。因为有返回类型
int Hello() {
return 20;
}
hello() { // 成员方法必须有返回类型。此处编译会出错,错误提示信息为:方法声明无效; 需要返回类型。
}
}
二.填空题
1
下面的MyClass类定义了methodA方法,请为其填上返回值类型。
public class MyClass{
methodA(float x,double y){
return x/y; }
}
正确答案:
double
第一空:
double
2
定义类时,需要使用的Java关键字是( )。
正确答案:class
第一空:
class
3
类一般除了包含成员变量和成员方法外,还可以包含构造方法,它使用 关键字调用,用于创建类的实例并对实例的成员变量进行初始化。
正确答案:new
第一空:
new
4
注意区别Java程序中的局部变量和成员变量。()用来表示对象的共同属性,是类的组成部分之一;()是方法内声明的,用于辅助方法功能的实现。
正确答案:
第一空:
成员变量
第二空:
局部变量
5
类一般除了包含成员变量和成员方法外,还可以包含 ,它使用new关键字调用,用于创建类的实例并对实例的成员变量进行初始化。
正确答案:
第一空:
构造器;构造方法;构造函数
我的答案:
第一空:
构造方法
6
类是对对象所具有的共同属性和共同行为的抽象。因此,类体通常包含两种重要的成员:( )和成员方法。
正确答案:
第一空:
成员变量;变量
我的答案:
第一空:
成员变量