11.30

2017-12-03  本文已影响0人  迷人的酋长
  1. 给出下面的代码段:
    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

  2. 下列关于构造函数的描述中,错误的是() D
    A、构造函数可以设置默认的参数 B、构造函数在定义类对象时自动执行
    C、构造函数可以是内联函数 D、构造函数不可以重载
    解析:
    构造函数(构造方法)是可以重载的,以个数、类型、顺序,所以D不正确
    关键字final来指明那个函数是内联的。在所有类说明中内部定义的成员函数都是内联函数。

  3. 下列说法正确的有() C
    A、class中的constructor不可省略
    B、constructor必须与class同名,但方法不能与class同名
    C、constructor在一个对象被new时执行
    D、一个class只能定义一个constructor
    解析:
    A、一个类中的构造方法是不能省略的。如果没有自定义的构造方法,系统会自动添加
    一个无参的构造方法。
    B、一个类中方法的方法名是可以和类名相同的。
    D、一个类可以有多个构造方法,即方法的重载。
    综上:所以选C

上一篇下一篇

猜你喜欢

热点阅读