首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

public,private和protected之间有什么区别?

public、private和protected是面向对象编程中的访问修饰符,用于控制类的成员(属性和方法)的访问权限。它们之间的区别如下:

  1. public(公有):public修饰的成员可以在任何地方被访问,没有访问限制。其他类的对象可以直接访问该成员。
  2. private(私有):private修饰的成员只能在当前类内部被访问,其他类无法直接访问该成员。私有成员对于类的外部是不可见的,只能通过类的公有方法来间接访问。
  3. protected(受保护):protected修饰的成员可以在当前类内部和子类中被访问,但对于类的外部是不可见的。其他类的对象无法直接访问该成员,只能通过继承该类的子类来访问。

这些访问修饰符的使用可以帮助我们控制类的成员的访问权限,提高代码的封装性和安全性。

以下是一些常见的应用场景和示例:

  1. public:适用于需要在多个类中公开访问的成员,例如公共接口、公共方法等。
代码语言:java
复制
public class Example {
    public String publicVariable;  // 公有成员变量
    public void publicMethod() {  // 公有方法
        // 方法体
    }
}
  1. private:适用于只在当前类内部使用的成员,可以有效地隐藏实现细节,提高安全性。
代码语言:java
复制
public class Example {
    private String privateVariable;  // 私有成员变量
    private void privateMethod() {  // 私有方法
        // 方法体
    }
}
  1. protected:适用于需要在当前类及其子类中使用的成员,可以实现继承和多态的特性。
代码语言:java
复制
public class Parent {
    protected String protectedVariable;  // 受保护的成员变量
    protected void protectedMethod() {  // 受保护的方法
        // 方法体
    }
}

public class Child extends Parent {
    public void childMethod() {
        protectedVariable = "Hello";  // 可以在子类中访问父类的受保护成员
        protectedMethod();  // 可以在子类中调用父类的受保护方法
    }
}

腾讯云相关产品和产品介绍链接地址请参考腾讯云官方文档:https://cloud.tencent.com/document/product/213

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • C# 基础知识

    1. 面向对象的三个特性:继承‘封装和多态 继承:就是子类实现父类的属性和方法,并在此基础上进行相关的扩展. 多态是建立在重写的基础之上的,是类与类之间的关系,是发生在不同的类之间的,子类重写父类的方法。实现不同的子类,不同的实现形态。 多态有3个条件 1:继承 2:重写(重写父类继承的方法) 3:父类引用指向子类对象 而重载是类的内部的方法构型上的不同,是发生在同一个类里面的。同一个函数名称,参数不同的多个方法,实现同一类型的功能。 封装是OOP编程中的一个重要手段,就是指把具体实现的逻辑细节在内部隐藏起来,对外部只暴露公共的、规范的接口和调用方法, 从而隐藏实现细节,使在使用的时候不用去考虑其内部的运作模式等等具体细节。以后即使是要修改其逻辑也不会影响外部调用的, 称为封装,主要是为了降低组件之间的耦合度,以提高扩展性和维护性。 2. 接口和抽象类:

    02
    领券