本文介绍一下封装
1.封装的概念
面向对象程式设计方法中,封装(英语:Encapsulation)是指一种将抽象性函式接口的实现细节部分包装、隐藏起来的方法。
1.1这里说说自己对于封装的理解
当我们创建一个类的对象以后,我们可以通过"对象.属性"的方式,对对象的属性进行赋值。这里,赋值操作只受到属性的数据类型和存储范围的制约。除此之外,没有其他制约条件。
但是,在实际问题中,我们往往需要给属性赋值加入额外的限制条件。这个条件就不能在属性声明时体现,我们只能通过方法进行限制条件(例如:一个属性表示年龄,那么年龄只能大于0)的添加。同时,我们需要避免用户再使用"对象.属性"的方式对属性进行赋值。则需要将属性声明为私有的(private).
1.2权限修饰符
1.2.1 封装性的体现,需要权限修饰符来配合。
- 1.Java规定的4种权限(从小到大排列):private、缺省、protected 、public
- 2.4种权限可以用来修饰类及类的内部结构:属性、方法、构造器、内部类
- 3.具体的,4种权限都可以用来修饰类的内部结构:属性、方法、构造器、内部类
1.2.2 4种权限修饰符的作用范围
1.3封装性小小案例
给属性添加private这个权限修饰符后,我们不能直接通过“对象.属性”去调用属性。但我们可以通过自己定义的方法(get/set)去调用和设置属性。
public class Person{
private String name;
private int age;
public int getAge(){//输出年龄
return age;
}
public void setAge(int age){//设置年龄
this.age = age;
}
public String getName(){//输出名字
return name;
}
public void setName(String name){//设置名字
this.name = name;
}
}