给出下面的代码段:
public class Base{
int w,x,y,z;
public Base(int a,int b){
x=a;y=b;
}
public Base(int a,int b,int c,int d){
//assignment x=a,y=b
w=d;z=c;
}
}
在代码说明//assignment x=a,y=b 处写入哪个代码是正确的? D
A、Base(a,b); B、x=a,y=b; C、this(a),this(b); D、this(a,b);
解析:
在本类中的一个构造方法中调用另一个构造方法时,要用 this (参数) 来实现。
从题中注释掉的代码可以看出,该构造方法需要调用public Base(int a,int b){ x=a;y=b; }
这个构造方法,而这个构造方法需要两个参数,所以应该写为:this (a, b) ;
综上:所以选D下列关于构造函数的描述中,错误的是() D
A、构造函数可以设置默认的参数 B、构造函数在定义类对象时自动执行
C、构造函数可以是内联函数 D、构造函数不可以重载
解析:
构造函数(构造方法)是可以重载的,以个数、类型、顺序,所以D不正确
关键字final来指明那个函数是内联的。在所有类说明中内部定义的成员函数都是内联函数。下列说法正确的有() C
A、class中的constructor不可省略
B、constructor必须与class同名,但方法不能与class同名
C、constructor在一个对象被new时执行
D、一个class只能定义一个constructor
解析:
A、一个类中的构造方法是不能省略的。如果没有自定义的构造方法,系统会自动添加
一个无参的构造方法。
B、一个类中方法的方法名是可以和类名相同的。
D、一个类可以有多个构造方法,即方法的重载。
综上:所以选C
11.30
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...