1、封装概述
(1)是面向对象三大特征之一(封装,继承,多态);
(2)是面向对象编程语言对客观世界的模拟,客观世界里的成员变量都隐藏在对象内部,外界无法直接操作。通俗来说,就是把对象的属性和方法结合成一个独立的整体,隐藏实现细节,并提供对外访问的接口。
2、封装原则
将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问。例如:成员变量用private修饰,提供对应的getXxxx()/setXxx()方法。代码实现如下:
public class Student {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
if (age < 0 || age > 200) {
System.out.println("你给的年龄不符合要求");
} else {
this.age = age;
}
}
public void show() {
System.out.println(name + "," + age);
}
}
3、封装好处
(1)通过方法来控制成员变量的操作,提高了代码的安全性。因为用方法来控制的话,可以对变量进行安全性校验。如下图所示:
(2)把代码用方法进行封装,提高了代码的复用性。假设方法中有很多代码,如果每次使用都要写这么多代码,是不是很麻烦?所以用一个方法来封装,每次使用的时候直接调用这个方法即可。
本文为学习笔记,所参考文章均已附上链接,若有疑问请私信!
创作不易,如果对你有点帮助的话麻烦点个赞支持一下!
新手小白,欢迎留言指正!