Java中的四种访问权限(private,public,protected,无修饰)

这四种权限从最大权限到最小权限分别是:

public > protected > 包访问权限> private

类的成员变量和方法访问权限

Java中的四种访问权限(private,public,protected,无修饰)_第1张图片
所谓访问权限,指的就是本类中的成员变量、成员方法对其他类的可见性

1、包访问权限: 没有任何修饰符的权限就是包访问权限,意味着当前包的所有类都可以访问这个成员,如表中所示,对于本包之外的类,这个成员就变成了private,访问不了

2、public: 被public修饰的成员对任意一个类都是可用的,任何一个类都可以访问到,通过操作该类的对象随意访问public成员

3、protected: 在相同的class内部,同一个包内和其他包的子类中能被访问。要理解protected权限,就需要了解继承,因为这个权限处理的就是继承相关的概念,继承而来的子类可以访问public、protected,

4、private: 除了包含这个成员的类之外,所有类都无法访问这个成员,相当于自我封闭,防止其他类改变或删除这个方法

private、public 修饰符定义的属性、方法进行调用

package com.atguigu.ssm.pojo;

public class Employee {



     public  int sex=20;

    private Integer id;
    private String userName;//实体类属性和数据库字段名称不一致
    private String passWord;//实体类属性和数据库字段名称不一致
    private Integer age;
    private String gender;
    private String email;

    public Employee(Integer id, String userName, String passWord, Integer age, String gender, String email) {
        this.id = id;
        this.userName = userName;
        this.passWord = passWord;
        this.age = age;
        this.gender = gender;
        this.email = email;
    }

    public Employee() {
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getPassWord() {
        return passWord;
    }

    public void setPassWord(String passWord) {
        this.passWord = passWord;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    public String getGender() {
        return gender;
    }

    public void setGender(String gender) {
        this.gender = gender;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    @Override
    public String toString() {
        return "Employee{" +
                "id=" + id +
                ", userName='" + userName + '\'' +
                ", passWord='" + passWord + '\'' +
                ", age=" + age +
                ", gender='" + gender + '\'' +
                ", email='" + email + '\'' +
                '}';
    }
}

测试代码:

 public static void main(String[] args) {
        Employee emp = new Employee();
        emp.test();
        System.out.println(emp.sex);//直接调用public修饰的变量

        emp.setId(18);//private修饰的变量进行赋值

        System.out.println(emp.getId());//调用private修饰的变量
    }

总结

1、public修饰符定义的属性和方法通过对象实例化进行调用,
2、private修饰的属性通过set、get方法进行调用

你可能感兴趣的:(java基础篇方法分类,java,jvm,开发语言)