📅  最后修改于: 2023-12-03 14:43:03.029000             🧑  作者: Mango
在Java中,访问修饰符用于控制类、方法、变量和构造函数的访问级别。私有(private)和受保护(protected)是两种常见的访问修饰符,而最终(final)是一种特殊修饰符,用于限制类、方法和变量的修改和继承。
私有访问修饰符用于限制访问范围,在类中声明的私有成员只能在同一个类中访问,其他类无法访问。私有访问修饰符通常用于隐藏实现细节和保护数据安全。
public class MyClass {
private int privateVariable;
private void privateMethod() {
// 私有方法的实现
}
}
受保护访问修饰符允许同一个包中的类和子类访问被修饰的成员。受保护访问修饰符常用于在继承关系中保护成员变量和方法。
public class ParentClass {
protected int protectedVariable;
protected void protectedMethod() {
// 受保护方法的实现
}
}
public class ChildClass extends ParentClass {
public void accessProtectedMember() {
// 子类可以访问受保护的成员
int value = protectedVariable;
protectedMethod();
}
}
最终访问修饰符可以用于类、方法和变量。当一个类被声明为最终时,该类无法被其他类继承。当一个方法被声明为最终时,该方法无法被子类重写。当一个变量被声明为最终时,该变量的值无法被修改。
public final class FinalClass {
// 最终类的实现
}
public class ParentClass {
public final void finalMethod() {
// 最终方法的实现
}
}
public class ChildClass extends ParentClass {
// 无法重写最终方法 finalMethod()
}
最终访问修饰符还可以用于局部变量,表示该变量在初始化后值不可修改。
public void doSomething() {
final int x = 5; // 声明一个最终变量
x = 10; // 编译错误,无法修改最终变量的值
}
总结: