public、protected、default、private作用域

java中修饰符 public  protected 默认 (frinedly) private 访问权限
   作用域       当前类    同一package   不在同一个包的子孙类       其它package   
   public           true              true                     true                                 true
   protected     true              true                     true                                 false

   default         true              true                     false                                false

   private         true              false                    false                               false


方法的签名 : 方法名+参数列表

方法头: 作用域+修饰符+返回值+方法名+参数列表


### Java 修饰符作用域解释 #### 类型声明中的修饰符 在 Java 中,术语 “class” 广义上涵盖了普通类、枚举类、接口以及注解类型 [@interface]。这些类型的声明可以被不同的访问控制修饰符所限定,具体如下: - **public**: 当前项目下的任何其他类都可以访问该类。 - **无修饰词 (包私有)**: 只能由同一个包内的类访问。 对于 `enum` 和 `annotation`, 默认情况下它们也是包级别的可见性[^1]。 #### 成员变量和方法的修饰符 成员是指嵌套类、字段、方法或构造函数等顶级内容。其可使用的修饰符包括但不限于: - **private**: 仅限于定义它的类内部使用; - **protected**: 同一包内或者不同包子类中可用; - **public**: 对所有类开放; - **static**: 表明这是一个静态上下文的一部分,意味着它属于整个类而不是特定实例; - **final**: 声明不可变属性;一旦赋值就不能更改(针对变量)或是子类无法覆盖的方法/类; - **abstract**: 定义抽象组件,需要继承者实现的具体行为; - **synchronized**: 方法同步化处理,在多线程环境中确保同一时间只有一个线程执行此段代码; - **native**: 指定本地方法调用,通常用于JNI(Java Native Interface)编程; - **transient** 和 **volatile**: 主要影响序列化过程及内存模型的行为。 值得注意的是,默认与最终(`default` 和 `final`)这两个关键词确实存在逻辑上的冲突,因为默认方法允许被重写而最终则不允许。然而,这种组合可能是为了强调某些设计意图或者是API演化的遗留产物[^4]。 ```java // Example demonstrating various modifiers on members within a class. public class ModifierExample { private int id; protected String name; public static final double PI = 3.14; // A synchronized method ensuring thread safety during concurrent access public synchronized void updateData() {} // An abstract method must be implemented by subclasses public abstract void performAction(); // Default method from interfaces can provide implementation while allowing overriding default void showDefaultBehavior(){ System.out.println("This is a default behavior."); } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值