Java基础语法之访问修饰限定符

2023-12-13 04:14:22

private

表示私有的,只能在同一个包中的同一个类使用

像这样就是在同一个包中的不同类用了private修饰的变量,这是非法的,那到底该如何给a赋值呢?可以在定义时就赋值,但这样的代码就没有可操作性,所以我们可以写一个方法来提供对外接口

class Test2{
    private int a;

    public int getA() {
        return a;
    }

    public void setA(int a) {
        this.a = a;
    }
}
public class Test {
    public static void main(String[] args) {
        Test2 test = new Test2();
        test.setA(10);
        System.out.println(test.getA());

    }
}

封装

这其实就是封装,将一些成员变量设置为私有的,然后再对外提供接口,也就是将数据和操作数据的方法进行有机结合,仅对外提供接口来和对象行进行交互

默认权限

当定义变量时没有加任何访问修饰限定符时,这个变量就是默认权限,只可以在同一个包当中使用

这是在同一个包中的不同类访问了b

注意,左边是在一个java文件中。右边和左边都是在一个包中,只不过不在一个Java文件中

public

表示共有的,同一个包中的同一个类,同包中的不同类,不同包中的子类,不同包中的非子类都可引用

protected

表示受保护的,在同一个包中可以使用,在不同包的子类中可以使用,但不同包的非子类中不可以使用

文章来源:https://blog.csdn.net/zyh20050430/article/details/134958137
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。