Java 封装

197 阅读1分钟

内容

  1. 把字段(成员变量)和实现细节隐藏起来,不允许外部直接访问
  2. 把方法暴露出来,让方法控制这些成员变量进行安全的访问和操作

因此,封装就有两个含义:把该隐藏的隐藏起来,把该暴露的暴露出来。

  1. java提供了三种访问权限,准确的说还有一种是默认的访问权限,加上它一共四种。

private 在当前类中可访问(需要getset方法)
default 在当前包内和访问
protected 在当前类和它派生的类中可访问
public 公众的访问权限,谁都能访问

用例

public class EncapsulationTest {
    public static void main(String[] args) {
        Anni anni = new Anni();
        anni.setName("小星星");
        anni.setLevel(50);
        anni.setSkill('早');
        System.out.println(anni.getName());
        System.out.println(anni.getLevel());
        System.out.println(anni.getSkill());

    }
}
class Anni{
    private String name;
    private int level;
    private char skill;
    public void setName(String name){
        this.name=name;
    }
    public String getName(){
        return this.name;
    }
    public void setLevel(int level){
        if (level>=1&&level<=18)
            this.level=level;
        else
            this.level=-1;
    }
    public int getLevel(){
        return this.level;
    }
    public void setSkill(char skill){
        this.skill=skill;
    }
    public char getSkill(){
        return this.skill;
    }
}