:::info

:::

什么是封装?

答:大概可以这么理解,就好比公开且无人管的器材室,所有人都可以自有出入,里面篮球🏀、足球⚽、羽毛球🏸等等器材大家都可以自由使用想怎么用就怎么用。封装就是现在来了一个管理员器材室不能随意出入了,你要东西可以,但是不能让你自己随意拿了,得经过管理员之手。
此处公开就对应权限修饰:public,被public修饰的属性用最大权限,可以被任意class调用;
不公开就对应:private,被private修饰的属性只能在本类内部使用,外部无法直接访问,但是可以通过类提供的public修饰的方法间接访问。

为什么要封装?封装有什么好处?

  1. 外部不能直接访问、提高代码的安全性,可控性更方便管理;
  2. 降低程序复杂度。

学生类的封装

  1. public class Studens {
  2. private int age; //定义成员变量 age并私有
  3. private String naem; //定义成员变量 name并私有
  4. public Studens() { //无参构造
  5. }
  6. public Studens(int age, String naem) { //带参构造
  7. this.age = age;
  8. this.naem = naem;
  9. }
  10. public void speak(){
  11. System.out.println("讲中国话"); // 成员方法
  12. }
  13. public int getAge() { //为外部提供变量访问的方法getXxx方法
  14. return age;
  15. }
  16. public void setAge(int age) { //为外部提供变量访问的方法setXxx方法
  17. this.age = age;
  18. }
  19. public String getNaem() { //为外部提供变量访问的方法getXxx方法
  20. return naem;
  21. }
  22. public void setNaem(String naem) { //为外部提供变量访问的方法setXxx方法
  23. this.naem = naem;
  24. }
  25. }