在Java中,修饰符(Modifiers)是一种用于修改类、方法、变量和其他实体的访问权限、行为或特性的关键字。Java提供了一组修饰符,可以用于实现对代码的封装、继承、多态和访问控制等功能。
1、访问修饰符(Access Modifiers):
public
:允许在任何位置访问。private
:仅允许在定义类的类中访问。protected
:允许在定义类的类、子类和同一包中的其他类中访问。-
default(即默认,什么也不写): 在同一包内可见,不使用任何修饰符。使用对象:类、接口、变量、方法。
我们可以通过以下表来说明访问权限:
2、非访问修饰符(Non-Access Modifiers):
static
:用于将字段或方法标记为静态,可以在没有对象实例的情况下访问。final
:用于修饰不可更改的类、方法或变量。abstract
:用于创建抽象类和抽象方法。synchronized
:用于保证在多线程环境中的同步访问。volatile
:用于声明在多个线程中共享的变量,以确保线程之间的可见性。transient
:用于阻止变量在序列化过程中的持久化。native
:用于指示方法是使用非Java代码实现的。
使用修饰符可以帮助控制代码的可见性和访问性,以及定义行为和限制。请注意,不同的修饰符在不同的上下文中具有不同的含义和用法。
使用修饰符来声明类、方法和变量:
public class MyClass {
private static final int MAX_COUNT = 10;
public static void main(String[] args) {
System.out.println("Hello, world!");
}
protected void myMethod() {
// 方法实现
}
}
在上述示例中,public
修饰符用于声明MyClass
类是公共可访问的。private
修饰符用于将MAX_COUNT
字段标记为私有,并且static
和final
修饰符用于使其成为静态和不可更改的。protected
修饰符用于将myMethod
方法标记为受保护,只能在子类中或者同一包中的其他类中访问。