访问说明符 - 私有vs受保护

时间:2014-08-06 17:46:12

标签: class oop

使用受保护的成员访问说明符而不是私有成员访问说明符是否存在任何风险?

2 个答案:

答案 0 :(得分:0)

你没有指定哪个lamguage但是,我假设在像OO这样的语言中,受保护的成员对于子类是“可见的”。后者可以使用它们,如果您因为课程的演变或要求的变化而在以后更改受保护的成员时可能会中断。在私人会员的情况下没有这种风险。子类可以扩展受保护的成员并使其暴露于外部(公共)世界。

答案 1 :(得分:0)

这个答案假设你使用的语言是java:

private成员只能通过自己的类(和内部类)来查看。这是最安全的现场可见性,因为它对所有外人都是隐藏的。由于它是完全隐藏的,您可以自由更改实现细节,甚至可以在以后完全删除该字段。

protected成员不仅可以被所有子类看到,而且可以被同一个包中的所有类看到。这使得以后更改字段变得更加困难,因为更多的类可能正在引用它。