📌  相关文章
📜  Java中类级别和方法级别访问控制的区别(1)

📅  最后修改于: 2023-12-03 14:42:59.719000             🧑  作者: Mango

Java中类级别和方法级别访问控制的区别

Java中访问控制有四个级别:public、protected、default(也称为包访问权限)、private。其中public是最高级别,可以被任何类访问;private是最低级别,只能被本类访问。本文将着重介绍Java中的类级别和方法级别访问控制的区别。

类级别访问控制

类级别访问控制是指限制一个类的可见性。在Java中,类级别的访问控制共有三种:public、default、private。

public

使用public修饰符的类可以被任何类访问。具有public访问控制的类通常被用作API中对外暴露的类。例如:

public class MyClass {
    // 类的主体
}
default

在Java中,如果没有使用访问控制修饰符,则该类默认为default权限。使用default访问控制的类只能被同一包中的其他类访问。例如:

class MyClass {
    // 类的主体
}
private

使用private修饰符的类只能被本类中的其他方法访问。私有类通常被用作工具类和辅助类。例如:

private class MyClass {
    // 类的主体
}
方法级别访问控制

方法级别访问控制是指限制一个方法的可见性。在Java中,方法级别的访问控制共有四种:public、protected、default、private。

public

使用public修饰符的方法可以被任何类访问。例如:

public void myMethod() {
    // 方法的主体
}
protected

当使用protected修饰符时,该方法可以被同一包中的其他类访问,以及其子类(不论该子类是否处于同一包中)。例如:

protected void myMethod() {
    // 方法的主体
}
default

使用default访问控制的方法只能被同一包中的其他类访问。例如:

void myMethod() {
    // 方法的主体
}
private

使用private修饰符的方法只能被本类中的其他方法访问。例如:

private void myMethod() {
    // 方法的主体
}
结论

Java中访问控制有四个级别:public、protected、default、private。其中public是最高级别,private是最低级别。类级别访问控制可以限制一个类的可见性,而方法级别访问控制可以限制一个方法的可见性。程序员应根据具体需求选择适当的访问控制级别,以达到最合适的访问控制效果。