Java访问修饰符

有了包的概念之后,下面就可以开始为读者讲解JAVA语言之中的访问控制权限的概念了。在JAVA中有四种访问控制权限,分别为:private、default、protected、public。
1、private访问控制符
在前面已经介绍了private访问控制符的作用,如果一个成员方法或成员变量名前使用了private访问控制符,那么这个成员只能在这个类的内部使用。
注意:
     不能在方法体内声明的变量前加private修饰符。
2、默认访问控制符
如果一个成员方法或成员变量名前没有使用任何访问控制符,就称这个成员所拥有的是默认的(default)访问控制符。默认的访问控制成员可以被这个包中的其它类访问。如果一个子类与其父类位于不同的包中,子类也不能访问父类中的默认访问控制成员。
3、 protected访问控制符
如果一个成员方法或成员变量名前使用了protected访问控制符,那么这个成员既可以被同一个包中的其它类访问,也可以被不同包中的子类访问。
4、 public访问控制符
如果一个成员方法或成员变量名前使用了public访问控制符,那么这个成员可以被所有的类访问,不管访问类与被访问类是否在同一个包中。
### Java 访问修饰符详解 #### 私有访问修饰符 `private` `private` 是最严格的访问级别。被声明为 private 的成员(方法或变量)只能在其所属的类内部访问[^4]。 ```java class Example { private int data; public void setData(int d) { this.data = d; } private void processData() { } } ``` #### 默认访问修饰符 (包级私有) 当未指定任何访问修饰符时,默认情况下,该成员可以在同一个包内的所有类中访问。 ```java // 文件位于 com.example 包下 package com.example; class DefaultExample { String message; // 默认访问级别 } class AnotherClassInSamePackage { void useDefaultExample() { DefaultExample ex = new DefaultExample(); ex.message = "Hello"; // 可以直接访问message属性 } } ``` #### 受保护访问修饰符 `protected` 带有 `protected` 关键字的方法或字段不仅能在同一包内访问,在不同包下的子类也可以继承并使用这些受保护的成员。 ```java package parent.package.name; public class Parent { protected String info = "Parent Info"; protected void showInfo() { System.out.println(info); } } package child.package.name; import parent.package.name.Parent; public class Child extends Parent { @Override protected void showInfo() { super.showInfo(); // 子类可以调用父类中的protected方法 } } ``` #### 公共访问修饰符 `public` 这是最为宽松的一种访问控制方式。只要程序能够触及到定义了此成员的地方就可以对其进行操作。 ```java public class PublicExample { public static final double PI = 3.1415926; public void displayPiValue() { System.out.printf("The value of Pi is %.7f%n", PI); } } ``` Java 提供这四个级别的访问控制主要是为了实现封装这一面向对象编程的核心原则之一——隐藏不必要的细节而只暴露必要的接口给外部使用者。合理运用不同的访问修饰符可以帮助开发者更好地管理代码结构,提高软件的安全性和可维护性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值