在面向对象编程中,公共,私有和受保护的是什么?

在面向对象编程中,公共,私有和受保护的是什么?

慕慕森
浏览 539回答 3
3回答

凤凰求蛊

它们是访问修饰符,可帮助我们实现封装(或信息隐藏)。它们告诉编译器哪些其他类应有权访问所定义的字段或方法。private -只有当前的类才能访问该字段或方法。protected -仅此类的当前类和子类(有时还包括相同包装的类)将有权访问该字段或方法。public -任何类都可以引用该字段或调用该方法。假定这些关键字被用作类定义中字段或方法声明的一部分。

小怪兽爱吃肉

它们并不是真正的概念,而是特定的关键字,它们通常在C ++和Java等流行语言中出现(语义略有不同)。本质上,它们旨在允许类限制对成员(字段或函数)的访问。这个想法是,一种类型被允许访问另一种类型的次数越少,所创建的依赖关系就越少。这样可以更轻松地更改所访问的对象,而不会影响引用该对象的对象。广义上讲,公共意味着允许每个人访问,私有意味着仅允许同一类的成员访问,而受保护意味着也允许子类的成员。但是,每种语言都为此添加了自己的东西。例如,C ++允许您非公开继承。在Java中,还有一个默认(包)访问级别,并且有关于内部类的规则等。

慕丝7291255

这三个都是在类中使用的访问修饰符和关键字。公共声明的任何内容都可以由该类内或该类外的任何对象使用,私有变量只能由该类内的对象使用,并且不能通过直接访问进行更改(因为它可以通过诸如friend function之类的函数进行更改) .protected部分下定义的任何内容都可以由该类及其刚刚派生的类使用。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Ruby