11.30

作者: 迷人的酋长 | 来源:发表于2017-12-03 10:29 被阅读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

    相关文章

      网友评论

          本文标题:11.30

          本文链接:https://www.haomeiwen.com/subject/ttlabxtx.html