CMS专题

多选题public class ConstOver {  public ConstOver (int x, int y, int z)  {  }  }   Which two overload the ConstOver constructor?()AConstOver ( ) { }BProtected int ConstOver ( ) { }CPrivate ConstOver (int z, int y, byte x) { }DPublic Object ConstOver (int x, i

题目
多选题
public class ConstOver {  public ConstOver (int x, int y, int z)  {  }  }   Which two overload the ConstOver constructor?()
A

ConstOver ( ) { }

B

Protected int ConstOver ( ) { }

C

Private ConstOver (int z, int y, byte x) { }

D

Public Object ConstOver (int x, int y, int z) { }

E

Public void ConstOver (byte x, byte y, byte z) { }

参考答案和解析
正确答案: B,C
解析: 暂无解析
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

有如下类声明: class XA{ int X; public: XA(int n){x=n;} }; class XB:public XA{ int y; public: XB(int a,int b); }; 在构造函数XB的下列定义中,正确的是( )。

A.XB::XB(inta,int b):x(a),y(b){}

B.XB::XB(int a,int b):XA(a),y(b){}

C.XB::XB(int a,int b):x(a),XB(b){}

D.XB::XB(int a,int b):XA(a),XB(b){}


正确答案:B
解析: C++中派生类构造函数的一般语法规则为:派生类名>::(派生类名)(参数表>):基类1>(参数表 1>),…,基类名n>(参数表n>),(子对象1)(于对象参数表1>,…子对象m>(于对象参数表m>){派生类新增成的初始化语句>;},终上所述。

第2题:

有如下类定义:

class Point{

public:

Point(int xx=0,int yy=0):x(xx),y(yy) { }

private:

int x,y;

};

class Circle:public Point{

public:

Circle(int r):radius(r) { }

private:

int radius;

};

派生类Circle中数据成员的个数是( )。

A、3

B、1

C、5

D、2


答案:A
解析:本题考查默认构造函数和带参数的构造函数,题目中定义一个对象a(2)以及对象数组b[3],共执行3次构造函数,对象指针不调用构造函数。


第3题:

下列程序的输出结果是非曲直【 】。includeclass base{ int x, y;public: base(int i,

下列程序的输出结果是非曲直【 】。

include<iostream, h>

class base

{

int x, y;

public:

base(int i, int j){x=i; y=j;}

virtual int add(){return x+ y;}

};

class three: public base

{

int z;

public:

three(int i, int j, int k) :base(i, j){z=k; }

int add() { return (base:: add()+z); }

};

void main()

{

three * q=new three(lO,20,30);

cout<<q->add()<<end1;

}


正确答案:60
60 解析:本题考察继承中子类对父类的继承方式,注意子类的add成员函数,它直接使用了父类的成员函数进行运算。

第4题:

有以下程序:includeusing namespace std;definePl 3.14Class Point{private:int x,y

有以下程序: #include<iostream> using namespace std; #definePl 3.14 Class Point {private: int x,y; public: Point(int a,intB) {X=a; y:b;} int getx() <return x;} int gety() {return y;}}; class Circle:public Point {pri

A.314

B.157

C.78.5

D.153.86


正确答案:A
解析: 本程序设计了一个点类Point,包含了横,纵两个坐标数据x和y,由它派生出了圃类Circle,并加入了新的数据成员,即一个半径r和一个求圆面积的函数成员area。在主函数main中,首先定义了一个圃Circle类的对象c1,并通过它的构造函数初始化其数据成员。由此可知,其半径r的值为10,所以其面积为PI*10*10=314,即对象c1的函数成员area的返回值为314。

第5题:

在下列源代码文件Test.java中,正确定义类的代码是( )。

A.pblic class test { public int x=0; public test(int x) { this. x=x;} }

B.public class Test { public int x=0; public Test(int x) { this. x=x;} }

C.public class Test extends T1,T2{ public int x = 0; public Test(int x){ this. x = x; } }

D.protected class Test extends T2{ public int x = 0; public Test(int x) { this. x = x; } }


正确答案:B
解析:本题主要考查类声明格式为[修饰符]class类名[extends父类名][implements类实现的接口列表],选项A中源文件名与程序名不相同,Java不支持多重继承所以选项C错误,选项D中类的访问权限不对,应为public。

第6题:

在如下源代码文件Test.java中, 哪个是正确的类定义?()

A.public class test { public int x = 0; public test(int x) { this.x = x; } }

B.public class Test{ public int x=0; public Test(int x) { this.x = x; } }

C.public class Test extends T1, T2 { public int x = 0; public Test (int x) { this.x = x; } }

D.public class


正确答案:BD

第7题:

有如下类声明: class XA { int x; public: XA(int n){x=n;} }; class XB:public XA { int y; public: XB(int a,int b); }; 在构造函数XB的下列定义中,正确的是

A.XB::XB(int a,int b):x(a),y(b){}

B.XB::XB(int a,int b):XA(a),y(b){}

C.XB::XB(int a,int b):x(a),XB(b){}

D.XB::XB(int a,int b):XA(a),XB(b){}


正确答案:B
解析:派生类的构造首先要调用基类的构造函数,对基类成员初始化;然后对派生类中新增的成员初始化。格式为:派生类名(构造函数形参表):基类构造函数(形参表)。

第8题:

有如下程序:includeusing namespace std;class Base{int x;public:Base(int n=0):x(n

有如下程序: #include<iostream> using namespace std; class Base{ int x; public: Base(int n=0):x(n){cout<<n;} int getX( )const{return x;} }; class Derived:public Base{ int y; public: Derived(int m,int n):y(m),Base(n){tout<<m;} Derived(int m):y(m){cout<<m;} }; int main( ){ Derived dl(3),d2(5,7); return 0; } 程序的输出结果是

A.375

B.357

C.0375

D.0357


正确答案:C
解析:有如下程序:  #includeiostream>  using namespace std;  class Base{  int x;  public:  Base(int n=0):x(n){coutn;}  int getX( )const{return x;}  };  class Derived:public Base{  int y;  public:  Derived(int m,int n):y(m),Base(n){toutm;}  Derived(int m):y(m){coutm;}  };  int main( ){  Derived dl(3),d2(5,7);  return 0;  }  程序的输出结果是  

第9题:

将下面程序补充完整。 include using namespace std; class Base{ public: 【 】fun(){r

将下面程序补充完整。

include <iostream>

using namespace std;

class Base{

public:

【 】 fun(){return 0;} //声明虚函数

};

class Derived:public Base{

public:

x,y;

void SetVal(int a,int b){}

int fun(){return x+y;}

};

void 【 】 SetVal(int a,int b){x=a;y=b;} //类Derived成员函数

void main(){

Derived d;

cout<<d.fun()<<endl;

}


正确答案:virtual int Derived::
virtual int Derived:: 解析:virtual int用于声明虚函数;Derived::用于指定类Derived成员函数。

第10题:

有如下程序: include class x { protected: int a; public:x(){ a=1;} }; class x

有如下程序: #include <iostream.h> class x { protected: int a; public: x() { a=1; } }; class x1 : virtual public x { public: x1() { a+=1; cout<<a; } }; class x2 : virtual public x { public: x2() { a+=2; cout<<a; } }; class y : public xl,public x2 { public: y() { cout<<a<<end1; } }; int main() { y obj; return O; } 该程序运行后的输出结果是( )。

A.1

B.123

C.242

D.244


正确答案:D
解析:本题程序中引入了虚基类。在主函数main中,执行语句“yobj;”时,先执行虚基类x的构造函数,使a=1;然后执行类x1的构造函数,使a=2,并输出值2;再执行类x2的构造函数,使a=4,并输出值4;最后执行类y的构造函数,输出值4。

更多相关问题