21xrx.com
2024-11-22 13:18:47 Friday
登录
文章检索 我的文章 写文章
「用Java中的访问修饰符加强代码封装」
2023-06-14 21:55:10 深夜i     --     --
Java 访问修饰符 代码封装

Java中的访问修饰符有public、private、protected和默认四种,它们可以对类、属性、方法进行不同程度的限制访问。通过使用不同的访问修饰符,我们可以加强代码的封装,保证程序的安全性和稳定性。

public:公有的,任何类都可以访问,一般用于被访问的类、接口、属性、方法。

private:私有的,只有在定义该类的类中有效,其子类和其他类都无法访问,一般用于私有的方法和属性,防止数据被外界改变。

protected:受保护的,同样使用protected变量或方法所在类的子类可以访问该变量或方法,外界和其他类都不能访问受保护的方法和属性。

默认:没有修饰符,默认是包访问权限,即包内可见,包外不可见,一般用于类、方法、属性等。

下面是一个示例代码,演示不同访问修饰符对代码的影响。


public class Test {

  public int publicVar = 1;  //公有的

  private int privateVar = 2; //私有的

  protected int protectedVar = 3; //受保护的

  int defaultVar = 4; //默认的

  public void publicMethod() {

    System.out.println("This is a public method.");

  }

  private void privateMethod() {

    System.out.println("This is a private method.");

  }

  protected void protectedMethod() {

    System.out.println("This is a protected method.");

  }

  void defaultMethod() {

    System.out.println("This is a default method.");

  }

}

public class AccessTest {

  public static void main(String[] args) {

    Test test = new Test();

    System.out.println("Public variable: " + test.publicVar);

    System.out.println("Private variable: " + test.privateVar); //无法访问

    System.out.println("Protected variable: " + test.protectedVar); //无法访问

    System.out.println("Default variable: " + test.defaultVar); //无法访问

    test.publicMethod();

    test.privateMethod(); //无法访问

    test.protectedMethod(); //无法访问

    test.defaultMethod(); //无法访问

  }

}

通过上述代码,我们可以看到不同修饰符的作用,其中private对外不可见,只有在Test类中可以访问,而protected对于子类是可见的,可以被继承,而默认的访问修饰符用于同一个包下的类可以访问,但是对于其他包下的类是不可见的。

总结一下,Java中的四种访问修饰符都有各自的使用场景,可以有效保护代码的安全性和稳定性,加强代码封装。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复