JAVA中public,private,protected和默认(缺省)的区别

JAVA中public,private,protected和默认(缺省)的区别

public,private,protected,默认(缺省)是四种修饰符

public:

​ 它具有最大的访问权限,可以访问任何一个在CLASS PATH下的类、接口、异常等。它往往用于对外的情况,也就是对象或类对外的一种接口的形式。

protected:

​ 当前类或子类可以访问,同时相同包内的其他类也可以访问protected成员;它主要的作用就是用来保护子类的。它的含义在于子类可以用它修饰的成员,其他的不可以,它相当于传递给子类的一种继承的东西。

default :默认(缺省)(没有修饰符):

​ 表示本包内可以使用,它是针对本包访问而设计的,任何处于本包下的类、接口、异常等,都可以相互访问,即使是父类没有用protected修饰的成员也可以。

private:

​ 它的访问权限仅限于类的内部,是一种封装的体现,例如,大多数的成员变量都是修饰符为private的,它们不希望被其他任何外部的类访问。

它们不希望被其他任何外部的类访问。

  • 4
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 C++ ,类的成员函数和成员变量有三种访问权限:public(公有)、private(私有)和protected(保护)。默认情况下: - 成员函数和成员变量的默认访问权限是 private。 - 派生类的默认继承方式是 private。 因此,如果没有显式地指定成员函数或成员变量的访问权限,则它们默认private。例如: ```c++ class MyClass { int a; // 默认private void func(); // 默认private }; ``` 如果想要将成员函数或成员变量指定为 publicprotected,可以使用关键字 publicprotected。例如: ```c++ class MyClass { public: int b; // public void func1(); // public protected: int c; // protected void func2(); // protected private: int a; // private void func3(); // private }; ``` 需要注意的是,派生类的访问权限取决于继承方式。如果继承方式为 public,则基类的 public 成员和 protected 成员在派生类都是 public 成员;如果继承方式为 protected,则基类的 public 成员和 protected 成员在派生类都是 protected 成员;如果继承方式为 private,则基类的 public 成员和 protected 成员在派生类都是 private 成员。例如: ```c++ class Base { public: int a; // public protected: int b; // protected private: int c; // private }; class Derived1 : public Base { // a 和 b 在 Derived1 都是 public // c 在 Derived1 是不可访问的 }; class Derived2 : protected Base { // a 和 b 在 Derived2 都是 protected // c 在 Derived2 是不可访问的 }; class Derived3 : private Base { // a 和 b 在 Derived3 都是 private // c 在 Derived3 是不可访问的 }; ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值