试比较类的三种继承方式public,protected,private之间的差别。

题目

试比较类的三种继承方式public,protected,private之间的差别。


相似考题
更多“试比较类的三种继承方式public,protected,private之间的差别。”相关问题
  • 第1题:

    ( 13 )如果派生类以 protected 方式继承基类,则原基类的 protected 成员和 public 成员在派生类中的

    访问属性分别是

    A ) public 和 public

    B ) public 和 protected

    C ) protected 和 public

    D ) protected 和 protected


    正确答案:D

  • 第2题:

    设有基类定义:

    class Cbase

    { private:int a;

    protected:int b;

    public:int c;

    };

    派生类采用何种继承方式可以使成员变量b成为自己的私有成员

    A.私有继承

    B.保护继承

    C.公有继承

    D.私有、保护、公有均可


    正确答案:A
    解析:类的继承中有三种继承方式,他们和类的访问级别相结合在派生类中可以产生多种访问级别。基类中成员为保护的,在派生类中要为私有的,可以采用私有继承。基类中的保护成员在派生类中不是私有就是保护,即级别只能降低而不能升高。基类中的公有成员则可能为私有、保护和私有。

  • 第3题:

    下列叙述中错误的是

    A.公有继承时基类中的public成员在派生类中仍是public成员

    B.私有继承时基类中的protected成员在派生类中仍是protected成员

    C.私有继承时基类中的public成员在派生类中是private成员

    D.保护继承时基类中的public成员在派生类中是protected成员


    正确答案:B
    解析:在私有继承方式下,所有的类成员都继承为私有成员。

  • 第4题:

    设有基类定义:class Cbase{ private:int a;protected. int b;public:int c;};派生类采用何种继承方式可以使成员变量b成为自己的私有成员( )。

    A.私有继承

    B.保护继承

    C.公有继承

    D.私有、保护、公有均可


    正确答案:A

  • 第5题:

    访问修饰符作用范围由大到小是( )

    A)private-default-protected-public

    B)public-default-protected-private

    C)private-protected-default-public

    D)public-protected-default-private


    答案:D

  • 第6题:

    下面的描述中表达错误的是

    A.公有继承时基类中的public成员在派生类中仍是public的

    B.公有继承时基类中的private成员在派生类中仍是private的

    C.公有继承时基类中的protected成员在派生类中仍是protected的

    D.私有继承时基类中的public成员在派生类中是private的


    正确答案:B
    解析:C++中,继承方式控制了基类中具有不同访问属性的成员在派生类中的访问属性。基类中的私有成员在派生类中是隐蔽的,只能在基类内部访问。所以B)选项是错误的。派生类中的成员不能访问基类的中私有成员,但可以访问基类中的公有成员和保护成员。此时派生类对基类中各个成员的访问能力与继承方式无关,但继承方式将影响基类成员在派生类中的访问控制属性,基类中公有和保护成员在派生类中的访问控制属性将随着继承方式而改变:派生类从基类公有继承时,基类的公有成员和保护成员在派生类中仍然是公有成员和保护成员;派生类从基类私有继承时,基类的公有成员和保护成员在派生类中都改变为私有成员,派生类从基类保护继承时,基类的公有成员在派生类中改变为保护成员,基类的保护成员在派生类中仍然为保护成员.所以,A)、C)和D)选项都是正确的。

  • 第7题:

    下列说法中错误的是( )。

    A)公有继承时基类中的public成员在派生类中仍是public的

    B)公有继承时基类中的private成员在派生类中仍是private的

    C)私有继承时基类中的public成员在派生类中是private的

    D)保护继承时基类中的public成员在派生类中是protected的


    正确答案:B

  • 第8题:

    下面叙述错误的是( )。

    A.对基类成员的访问能力在private派生类中和public派生类中是相同的

    B.基类的private成员在public派生类中不可访问

    C.基类中的public成员在protected派生类中是protected的

    D.基类中的public成员在protected派生类中仍然是public的


    正确答案:D

  • 第9题:

    当一个派生类公有继承一个基类时,基类中的所有公有成员成为派生类的()

    • A、public成员
    • B、private成员
    • C、protected成员
    • D、友员

    正确答案:A

  • 第10题:

    在类定义的外部,可以被访问的成员有()

    • A、所有类成员
    • B、private或protected的类成员
    • C、public的类成员
    • D、public或private的类成员

    正确答案:C

  • 第11题:

    单选题
    如果派生类以protected方式继承基类,则原基类的protected成员和public成员在派生类中的访问属性分别是(  )。
    A

    public和public

    B

    public和protected

    C

    protected和public

    D

    protected和protected


    正确答案: A
    解析:
    派生类中的成员不能访问基类中的私有成员,可以访问基类中的公有成员和保护成员。当派生类从基类保护继承时,原基类的公有成员在派生类中变成保护成员,基类的保护成员在派生类中仍然是保护成员。

  • 第12题:

    单选题
    下面叙述错误的是()
    A

    基类的protected成员在派生类中仍然是protected的

    B

    基类的protected成员在public派生类中仍然是protected的

    C

    基类的protected成员在private派生类中是private的

    D

    基类的protected成员不能被派生类的对象访问


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

  • 第13题:

    如果派生类以protected方式继承基类,则原基类的protected成员和public成员在派生类中的访问属性分别是

    A.public和public

    B.public和protected

    C.protected和public

    D.protected和protected


    正确答案:D
    解析:本题考查的知识点是:基类成员在派生类中的访问属性。派生类中的成员不能访问基类中的私有成员,可以访问基类中的公有成员和保护成员。此时派生类对基类中各成员的访问能力与继承方式无关,但继承方式将影响基类成员在派生类中的访问控制属性,基类中公有成员和保护成员在派生类中的访问属性将随着继承方式而改变:派生类从基类公有继承时,基类的公有成员和保护成员在派生类中仍然是公有成员和保护成员;派生类从基类私有继承时,基类的公有成员和保护成员在派生类中都改变为私有成员;派生类从基类保护继承时,基类的公有成员在派生类中改变为保护成员,基类的保护成员在派生类中仍为保护成员。故本题应该选择D。

  • 第14题:

    基类的public和protected成员都以protected身份出现在派生类中,但基类的private成员不可访问,该情况为()继承。

    A. 公有

    B. 私有

    C. 全部

    D. 保护


    正确答案:D

  • 第15题:

    下列说法中错误的是( )

    A.公有继承时基类中的public成员在派生类中仍是public的

    B.公有继承时基类中的private成员在派生类中仍public是的

    C.私有继承时基类中的public成员在派生类中仍private是的

    D.保护继承时基类中的public成员在派生类中仍protected是的


    正确答案:B

  • 第16题:

    C++中,派生类对基类的继承有三种方式:公有继承(Public)、包含继承(Protected)、私有继承(Private)。类B保护继承方式继承了类A,类C公有继承方式继承了类B,则______是类C中的公有成员。

    A.类A的公有成员

    B.类A的保护成员

    C.类B的公有成员

    D.类B的保护成员


    正确答案:C
    解析:C++中,派生类对基类有三种继承方式:公有继承(Public)、私有继承(PrJvate)和保护继承(Protected)。
      公有继承的特点是基类的公有成员和保护成员作为派生类的成员时,它们都保持原有的状态,而基类的私有成员仍然是私有的。
      私有继承的特点是基类的公有成员和保护成员都作为派生类的私有成员,并且不能被这个派生类的子类所访问。
      保护继承的特点是基类的所有公有成员和保护成员都作为派生类的保护成员,并且只能被它的派生类成员函数或友元访问,基类的私有成员仍然是私有的。

  • 第17题:

    下列说法有错误的是 ______。

    A.公有继承时基类的public成员在派生类中仍是public

    B.私有继承时基类的public成员在派生类中为private

    C.保护继承时基类的protected成员在派生类中是protected

    D.保护继承时基类的private成员在派生类中是protected


    正确答案:D

  • 第18题:

    下列说法中错误的是( )。

    A.公有继承时基类中的public成员在派生类中仍是public的

    B.公有继承时基类中的private成员在派生类中是public的

    C.私有继承时基类中的public成员在派生类中是private的

    D.保护继承时基类中的public成员在派生类中是protected的


    正确答案:B

  • 第19题:

    下列说法中错误的是( )。

    A.公有继承时基类中的public成员在派生类中仍是public的

    B.公有继承时基类中的private成员在派生类中仍是private的

    C.私有继承时基类中的public成员在派生类中是private的

    D.保护继承时基类中的public成员在派生类中是protected的


    正确答案:B

  • 第20题:

    下面的说法中错误的是( )。

    A.公有继承的基类中public成员在派生类中仍是public

    B.私有继承的基类中public成员在派生类中是private

    C.公有继承的基类中private成员在派生类中仍是private

    D.保护继承的基类中public成员在派生类中是protected


    正确答案:C

  • 第21题:

    不论派生类以何种方式继承基类,都不能直接使用基类的()

    • A、public成员
    • B、private成员
    • C、protected成员
    • D、所有成员

    正确答案:B

  • 第22题:

    在保护继承方式下,基类的public成员成为派生类的()成员,基类的protected成员成为派生类的()成员。


    正确答案:保护;保护

  • 第23题:

    问答题
    试比较类的三种继承方式public,protected,private之间的差别。

    正确答案: 不同的继承方式,导致不同访问属性的基类成员在派生类中的访问属性也有所不同:
    公有继承,使得基类public(公有)和protected(保护)成员的访问属性在派生类中不变,而基类private(私有)成员不可访问。
    私有继承,使得基类public(公有)和protected(保护)成员都以private(私有)成员身份出现在派生类中,而基类private(私有)成员不可访问。
    保护继承中,基类public(公有)和protected(保护)成员都以protected(保护)成员身份出现在派生类中,而基类private(私有)成员不可访问。
    解析: 暂无解析