📜  Java访问修饰符(1)

📅  最后修改于: 2023-12-03 15:16:38.650000             🧑  作者: Mango

Java访问修饰符

访问修饰符是Java程序中控制访问权限的关键字,它们决定了类、方法、变量和构造函数在哪些地方可以被访问。Java提供了四种不同的访问修饰符:public、protected、default(不使用任何修饰符)和private。下面将详细介绍每种访问修饰符及其使用场景。

1. public访问修饰符

使用public修饰的类、方法、变量或构造函数可以在所有的地方访问,即它们具有最大的访问权限。使用public修饰的成员可以被其他类通过对象访问。

示例:

public class MyClass {
    public void myMethod() {
        System.out.println("This is a public method.");
    }
}
2. protected访问修饰符

使用protected修饰的成员只能在其所在类、子类和同一包内被访问。子类可以继承和访问其父类中声明为protected的成员。在不同包中的非子类关系的类无法访问protected成员。

示例:

package mypackage;

public class MyClass {
    protected int myVariable = 10;
}
package mypackage;

public class MySubClass extends MyClass {
    public void accessProtectedMember() {
        System.out.println("The value of myVariable is: " + myVariable);
    }
}
3. default访问修饰符

当没有指定任何访问修饰符时(即默认情况下),将使用default访问修饰符。default成员只能在同一包内访问,对于不同包中的类,即使是子类关系,也无法访问default成员。

示例:

package mypackage;

class MyClass {
    int myVariable = 10;
}
package mypackage;

public class MySubClass extends MyClass {
    public void accessDefaultMember() {
        System.out.println("The value of myVariable is: " + myVariable);
    }
}
4. private访问修饰符

使用private修饰的成员只能在其所在类内部被访问,无法被其他类访问。private成员主要用于对类的内部实现细节进行封装,提供更好的安全性和封装性。

示例:

public class MyClass {
    private int myVariable = 10;

    private void myMethod() {
        System.out.println("This is a private method.");
    }
}

以上是Java访问修饰符的详细介绍,了解其使用场景和限制条件对于控制代码的可访问性非常重要。在设计类和方法时,根据需求选择合适的访问修饰符可以增加代码的可读性和安全性。