19. java面向对象 - 封装

1. 封装性体现

​ 我们将类的属性私有化(private),同时提供公共的(public)方法来获取(getXxx)和设置(setXxx)此属性的值。拓展:①不对外暴露的私有方法 ②单例模式

二、权限修饰符

修饰符 类内部 同一个包 不同包子类 同一工程
private Yes
default Yes Yes
protected Yes Yes Yes
public Yes Yes Yes Yes

对于class的权限只可以用public和default。四种权限可以用来修饰类及类的内部结构:属性、方法、构造器、内部类;

  • public类可以在任意地方被访问
  • default类只可以被同一个包内部的类访问
public class Animal {
    String name;
    private int age;
    //设置值
    public void setAge(int formAge) {
        if (formAge < 0 || formAge >130) {
            throw new RuntimeException("传入值非法!");
        } else {
            age = formAge;
        }
    }
    //取值
    public int getAge(){
        return age;
    }
}


class animalTest{
    public static void main(String[] args) {
        Animal anl = new Animal();
        // anl.setAge(131);
        anl.setAge(10);
        System.out.println(anl.getAge());
    }
}

猜你喜欢

转载自www.cnblogs.com/hq82/p/12128959.html
今日推荐