单选题类MyClass的定义如下:  Public Class MyClass   Private data as String  End Class   则关键字Private在类的定义中的作用是()A 限定成员变量data 只在本模块内部可以使用B 限定成员变量data 仅在类MyClass中可以访问C 限定成员变量data 仅在类MyClass及其子类中可以访问D 限定类MyClass 仅在本模块中可以使用

题目
单选题
类MyClass的定义如下:  Public Class MyClass   Private data as String  End Class   则关键字Private在类的定义中的作用是()
A

限定成员变量data 只在本模块内部可以使用

B

限定成员变量data 仅在类MyClass中可以访问

C

限定成员变量data 仅在类MyClass及其子类中可以访问

D

限定类MyClass 仅在本模块中可以使用


相似考题
更多“类MyClass的定义如下:  Public Class MyClass   Private data as Strin”相关问题
  • 第1题:

    有如下程序: include using namespace std; class MyClass { public:

    有如下程序: #include <iostream> using namespace std; class MyClass { public: MyClass() { ++count; } ~MyClass() { --count; } static int getCount() { return count; } private: static int count; }; int MyClass::count=0; int main() { MyClass obj; cout<<obj.getCount(); MyClass *ptr=new MyClass; cout<<MyClass::getCount(); delete ptr; cout<<MyClass::getCount(); return 0; }程序的输出结果是

    A.121

    B.232

    C.221

    D.122


    正确答案:A
    解析:本题考查的知识点是:静态成员。对于类中的非静态数据成员,每一个类对象都拥有一个拷贝(副本),即每个对象的同名数据成员可以分别存储不同的数值,这是保证每个对象拥有区别于其他对象的特征的需要。而类中的静态成员则是解决同一个类的不同对象之间的数据和函数共享问题的。静态成员的特性是不管这个类创建了多少个对象,它的静态成员都只有一个拷贝(副本),这个副本被所有属于这个类的对象共享。这种共享与全局变量或全局函数相比,既没有破坏数据隐藏的原则,又保证了安全性。题目中,首先定义了一个obj对象,其构造函数使MyClass的静态数据成员count增1,所以第一条输出语句输出的结果是1。然后通过指针动态创建了一个MyClass类的对象,构造函数再次被调用,count变为2,所以第2次输出结果是2。接下来是用delete删除了刚才动态创建的MyClass对象,析构函数被调用,count减1变为1,第3次输出1。故本题的输出为121,选项A正确。

  • 第2题:

    定义一个类名为“MyClass.java”的类,并且该类可被一个工程中的所有类访问,那么该类的正确声明应为 ( )

    A.private class MyClass extends Object

    B.class UyClass extends Object

    C.public class MyClass

    D.private class MyClass extends Object


    正确答案:C

  • 第3题:

    有如下类定义: class MyClass { public: private: ______________________________________ int data; }; 若要为MyClass类重载流输入运算符“>>”,使得程序中可以“cin>>obj;”的形式改变MyClass类的对象0bj中数据成员data的值,则横线处的声明语句应为( )。

    A.friend istream& operator>>(istream&is,MyClass&A.;

    B.friend istream&operator>>(istream&is,MyClass A.;

    C.istream&operator>>(istream&is,MyClass&A.;

    D.istream&operator>>(istream&is,MyClass A.;


    正确答案:A
    本题考查重载流运算符“>>”,根据重载规则,本题答案为A。

  • 第4题:

    类MyClass的定义如下: class MyClass { public: MyClass(){value=0;} SetVariable(int i){value=i;) private: int value; }; 则对下列语句序列正确的描述是( )。

    A.MyClass*p,my;p=&my;

    B.语句p=&my;是把对象my赋值给指针变量p

    C.语句MyClass*p,my;会调用两次类MyClass的构造函数

    D.对语句*p.SetV ariable(5)与语句my.SetVariable(5)等价


    正确答案:D

  • 第5题:

    有如下的类的模板定义: template class MyClass { private:T number; public:MyClass(

    有如下的类的模板定义:

    template <class T>

    class MyClass

    {

    private:

    T number;

    public:

    MyClass(T k);

    };

    其中构造函数MyClass()用k的值初始化数据成员n。因此在模板类体外,构造函数

    MyClass应定义为【 】。


    正确答案:templateclassT>/MyClassT>::MyClass(T k):number(k){}
    templateclassT>/MyClassT>::MyClass(T k):number(k){} 解析:类模板的成员函数的类体外的定义以“templateclass T>”开头。

  • 第6题:

    有如下的类模板定义: templateclassMyClass{TYPE n; public:MyClass(TYPE k);… };

    有如下的类模板定义:

    template<typenameTYPE>

    classMyClass{

    TYPE n;

    public:

    MyClass(TYPE k);

    };

    其中构造函数MyClass用的值初始化数据成员n。因此在模板类体外,构造函数MyClass应定义______。


    正确答案:templatetypename TYPE> TyClassTYPE>::MyClass(TYPE k):n(k){}
    templatetypename TYPE> TyClassTYPE>::MyClass(TYPE k):n(k){}

  • 第7题:

    有以下程序:includeusing namespace std;class MyClass{public:MyClass(int n){numbe

    有以下程序: #include<iostream> using namespace std; class MyClass { public: MyClass(int n){number=n;} //拷贝构造函数 MyClass(MyClass&other) {number=other.number;} ~MyClass() {} private: int number; }; MyClass fun(MyClass p)

    A.5

    B.4

    C.3

    D.2


    正确答案:B
    解析: 调用拷贝构造函数的情况为:一个新对象被另一个已存在的同类型对象初始化,当一个对象作为实参传遵给函数时为初始化形参,要调用拷贝构造函数。在函数值返回时形参的生命期结束时它的析构函数被调用,在函数返回一个对象时调用拷贝构造函数。符合以上条件的有:用对象obj1来初始化obj3;obj3作为实参被传入,函数fun返回一个对象时,系统用返回值初始化一个匿名对象时调用了拷贝构造函数。总共调用4次。

  • 第8题:

    下面类的定义,有( )处错误。 class MyClass { public: void MyClass(); ~MyClass(int Value); private: int i=0; };

    A.1

    B.2

    C.3

    D.4


    正确答案:C
    解析:上述类的定义共有3处错误。第一处:类的成员变量不能在定义时进行初始化:第二处:类的构造函数不能有返回值(包括void类型);第三处:类的析构函数不能有参数。

  • 第9题:

    有如下程序:includeusing namespace std;class MyClass{public:MyClass(){++count;}~

    有如下程序: #include<iostream> using namespace std; class MyClass{ public: MyClass(){++count;} ~MyClass(){--count;} static int getCount(){return count;} private: static int count; }; int MyClass::count=0; int main(){ MyCl

    A.121

    B.232

    C.221

    D.122


    正确答案:A
    解析: 本题考查的知识点是静态成员。类中的静态成员是解决同—:个类的不同对象之间的数据和函数共享问题的。静态成员被所有属于这个类的对象共享。这种共享与全局变量或全局函数相比,既没有破坏数据隐藏的厚则,又保证了安全性。题目中,首先定义了一个obj对象,其构造函数使MyClass的静态数据成员count增1,所以第一条输出语句输出的结果是1。然后通过指针动态创建了一个MyClass类的对象,构造函数再次被调用,count变为2,所以第2次输出结果是2。接下来是用dilete删除了刚才动态创建的MyClass对象。析

  • 第10题:

    定义一个类名为MyClass的类,并且该类可被所有类访问,那么该类的正确声明应为()

    A、private class MyClass extends Object

    B、class MyClass extends Object

    C、public class MyClass

    D、protected class MyClass extends Object


    答案:C

  • 第11题:

    对于下面定义的类MyClass,请在函数f( )中添加对象成员把n的值修改为50。

    class MyClass

    {

    public:

    MyClass(int x){n=x;}

    void SetNum(int n1){n=n1;}

    private:

    int n;

    };

    void f()

    {

    My Class*ptr=new MyClass(45);

    【12】

    }


    正确答案:
    ptr->SetNum(50);

  • 第12题:

    假设在Java源程序文件“MyClass.java”中只含有一个类,而且这个类必须能够被位于个庞大的软件系统中的所有Java类访问到,那么下面()声明有可能是符合要求的类声明。

    • A、private class MyClass extends Object
    • B、public class myclass extends Object
    • C、public class MyClass
    • D、class MyClass extends Object

    正确答案:C

  • 第13题:

    有以下类定义 class MyClass { private: int id; Char gender; Char*phone; public: MyClass():id(0),gender(‘#’),phone(NULL){} MyClass(int no,charge=’#’,char*ph=NULL) {id=no;gender=ge;phone=ph;} ); 下列类对象定义语句中错误的是( )。

    A.MyClass myObj;

    B.MyClass myObj(11,”13301111155”);

    C.MyClassmyObj(12,’m’);

    D.MyClassmyObj(12);


    正确答案:B
    解析: 本题考查构造函数的应用。对象建立用初始化列表对数据成员进行时,列表中的参数类型要与构造函数中形参类型一致。B选项中第二个参数为”13301111155”是字符串,而构造函数中第二个形参为char型,两者不一致造成错误。

  • 第14题:

    有如下类定义: class MyClass{ int value; public: MyClass(int n):value(n){} int getValueconst{retum value;} }; 则类MyClass的构造函数的个数是( )。

    A.1个

    B.2个

    C.3个

    D.4个


    正确答案:B
    本题考查类的默认构造函数和自定义的构造函数、本题中MyClass(intn):value(n){}为自定义的构造函数,加上默认构造函数,一共有2个构造函数。

  • 第15题:

    有如下类的定义。横线处的语句是( )。 class MyClass { public: MyClass(int a=0,int b=0) { X=a; Y=b; } void Change()const { X-=10; Y+=10; } private: ______intX, Y;

    A.static

    B.const

    C.mutable

    D.不需要填入内容


    正确答案:C
    解析:C++中const关键字用来表示一个常量,同时const也用来修饰函数。这两个概念需要明确:const所修饰的函数只能是类的成员函数,因为const所修饰的函数中,要由编译器负责保护类的成员变量不被修改。而相对的,mutable则是用来修饰类的成员变量,让该变量在const所修饰的成员函数中可以被修改。而且const修饰的函数只能是类的成员函数,mutable修饰的变量只能是类的成员变量。

  • 第16题:

    有以下类定义: class MyClass { private: int id; char gender; char *phone; public: MyClass():id(0),gender('#'),phone(NULL){} MyClass(int no,char ge='#',char *ph=NULL) {id=no;gender=ge;phone=ph; } };下列类对象定义语句中错误的是______。

    A.MyClass myObj;

    B.MyClass myObj(11,"13301111155");

    C.MyClass my0bj(12,'m');

    D.MyClass myObj(12);


    正确答案:B
    解析:初始化应该和构造函数相同。

  • 第17题:

    下列类定义中包含了构造函数和拷贝构造函数的原型声明,请在横线处填写正确的内容,使拷贝构造函数的声明完整。

    class myClass{

    private:

    int data;

    public:

    myClass(int value);//构造函数

    myClass(const______another Object);//拷贝构造函数

    }


    正确答案:myClass&
    myClass& 解析:此题考查的是复制构造函数。复制构造函数定义的一般格式如下:类名::类名(const类名&引用对象名){复制构造函数体)。而在类中的声明部分可省去“类名::”。

  • 第18题:

    类的说明如下,请指出错误的地方 ______。 class Myclass { int a=111; public: Myclass(int x, int y); Myclass(int val); ~Myclass(); }

    A.int a=111;

    B.Myclass(Int x, int y);

    C.Myclass(int val);

    D.~Myclass();


    正确答案:A

  • 第19题:

    已知类MyClass的定义如下: ClassMyClass{ public: MyClass(intd){data=d;} ~MyClass(){} private: intdata; }; 下列对MyClass类对象数组的定义和初始化语句中,正确的是( )。

    A.MyClassarray[2];

    B.MyClassarray[2]={MyClass(5)};

    C.MyClassarray[2]={MyClass(5),Myclass(6)};

    D.MyClass*array=newMyClass[2];


    正确答案:C
    C。【解析】A只是声明,没有初始化;B的初始化错误,另一个数组对象没有指明地址;D同样做的不是初始化的事情。

  • 第20题:

    如下的类定义,错误的语句是( )。class Myclass {public: int a=1; //A) Myclass( ); //B) Myclass(int i); //C) ~Myclass( ); //D)

    A.A

    B.B

    C.C

    D.D


    正确答案:A
    解析:类中的数据成员不能在定义类时直接赋初值。

  • 第21题:

    类MyClass的定义如下: class MyClass { public: MyClass(){} MyClass(int i) { value=new int(i); } int *value; }; 若要对类中的value赋值,则下面的语句中,正确的是( )。

    A.MyClass my;my.value=10;

    B.MyClass my;*my,value=10;

    C.MyClass my;my.*value=10;

    D.MyClass my(10);


    正确答案:D

  • 第22题:

    如下类定义中包含了构造函数和拷贝构造函数的原型声明,请在横线处填写正确的内容,使拷贝构造函数的声明完整。

    Class myClass{

    private:

    int data;

    public:

    myClass(int value);//构造函数

    myClass(const【 】anotherObject);//拷贝构造函数

    }


    正确答案:myClass&
    myClass& 解析:本题考查的知识点是:拷贝构造函数。拷贝构造函数定义的一般格式如下:
    类名>::类名)(const类名>&引用对象名>)
    {
    //拷贝构造函数体
    }
    而在类中的声明部分则可省去类名>::。故本题应该填myClass&。

  • 第23题:

    类MyClass的定义如下:  Public Class MyClass   Private data as String  End Class   则关键字Private在类的定义中的作用是()

    • A、限定成员变量data 只在本模块内部可以使用
    • B、限定成员变量data 仅在类MyClass中可以访问
    • C、限定成员变量data 仅在类MyClass及其子类中可以访问
    • D、限定类MyClass 仅在本模块中可以使用

    正确答案:B

  • 第24题:

    单选题
    类MyClass的定义如下:  Public Class MyClass   Private data as String  End Class   则关键字Private在类的定义中的作用是()
    A

    限定成员变量data 只在本模块内部可以使用

    B

    限定成员变量data 仅在类MyClass中可以访问

    C

    限定成员变量data 仅在类MyClass及其子类中可以访问

    D

    限定类MyClass 仅在本模块中可以使用


    正确答案: C
    解析: 暂无解析