type
status
date
slug
summary
tags
category
icon
password
在编程语言如 Java 或 C# 中,protectedprivatepublic 是访问修饰符,用于定义类成员(如变量和方法)的访问级别。它们各自的含义和区别如下:

1. public

  • 定义:如果一个成员(如方法或变量)被声明为 public,则它可以被任何其他类访问。
  • 使用场景:通常用于那些需要从类的外部进行访问的方法和属性。

2. private

  • 定义:如果一个成员被声明为 private,则它只能被其所在的类访问。
  • 使用场景:用于封装,即隐藏类的内部实现细节,并只通过公共方法暴露接口。

3. protected

  • 定义:如果一个成员被声明为 protected,则它可以被其所在类以及该类的子类访问。
  • 使用场景:当你希望子类能访问这些成员,但不希望它们对其他类开放时使用。

比较

  • 访问范围
    • public > protected > private
    • public 成员可以在任何地方被访问。
    • protected 成员可以在同一个包的类或不同包中的子类中被访问。
    • private 成员只能在其所在类中被访问。
  • 封装性
    • private 提供最严格的封装,保护类的内部实现。
    • protected 在保持一定封装性的同时,为子类提供了更多的可见性和灵活性。
    • public 提供最少的封装,通常用于定义 API 和接口。

举例

假设有一个类 Base 和它的子类 Derived
在这个例子中,Derived 类可以访问 Base 类的 publicprotected 成员,但不能访问其 private 成员。
重复文件搜索清理 Duplicate Same Files Searcher愤怒的南瓜完整代码
  • Twikoo
  • Giscus
  • Utterance