请问这题的答案的原因?

来源:百度知道 编辑:UC知道 时间:2024/05/16 15:56:57
已知3个类O、P和Q,类O中定义了一个私有方法F1、一个公有方法F2和一个受保护的方法F3:类P和类Q是类O的派生类,其继承方式如下所示:
class P : protected O {…};
class Q : public O {…};
关于方法F1的描述中正确的是___(34)___;关于方法F2韵描述中正确的是___(35)___;关于方法F3的描述中正确的是___(36)___。
(34)A.方法F1无法被访问 B.只有在类O内才能访问方法F1
C.只有在类P内才能访问方法F1 D.只有在类Q内才能访问方法F1
(35)A.类O、P和Q的对象都可以访问方法F2 B.类P和Q的对象都可以访问方法F2
C.类0和Q的对象都可以访问方法F2 D.只有在类P内才能访问方法F2
(36)A.类0、P和Q的对象都可以访问方法F3 B.类0、P和Q的对象都不可以访问方法F3
C.类0和Q的对象都可以访问方法F3 D.类P和Q的对象都可以访问方法F3。
能否解释一下这几个问题的答案。bcb

为什么.类0、P和Q的对象都不可以访问方法F3 ??
O不是应该可以访问F3的吗?
还有F2应该是O P Q都能够访问啊?
求救!
急!谢谢

建议你去看一下访问控制符的介绍,这是OOP编程的基础,别人告诉你对你也不好,这是编OOP程必须记住的。

Public就是所有人都能访问,可以理解为是人就能用。
Protected就是子类可以调用,可以理解为一个家族能用。
Private只有自己能调用,可以理解为只有自己用。

"类0、P和Q的对象都不可以访问方法F3 ?? "
YES,”受保护的方法F3”,是类O的protected,所以只能在”类O”或”类O的派生类”中才能访问..而不是”类0、P和Q的”对象””能访问的..

O类本身是可以访问f3的,但O的对象不可以,因为f3是protected.

F2类0和Q的对象都可以访问.但 P 是protected 继承,不能访问public F2.

建议你还是把类和类的继承学懂先....
最好自己写一下程序运行一下......