为什么需要封装?封装的作用和含义?
答:我要看电视,只要按一下开关和换台就可以了。有必要了解电视机内部的结构吗?有必要碰碰显像管吗?明显不需要嘛!!!隐藏对象内部的复杂性,只对外公开简单的接口。便于外界调用,从而提高系统的可扩展性,可维护性。
- 我们程序设计要追求“高类聚,低耦合”
1.高类聚就是类的内部数据操作细节自己完成,不允许外部干涉!!!!!
2.低耦合:仅暴露少量的方法给外部使用。
- 使用访问控制符,实现封装
同一个类 同一个包中 子类 所有类
private *
default * *
protected * * *
public * * * *
封装要点:
类的属性的处理:
1.一般使用private。(除非本属性确定会让子类继承)
2.提供相应的get/set方法来访问相关属性,这些方法通常是public,从而提供对属性的读取操作。(注意:boolean变量的get方法是用:is开头!)一些只用于本类的辅助性方法可以用private。
希望其他类调用的方法用public
package theChildOfGod.bjxy.oop.encapsulation;
public class Man {
private String name;
private String id;
private boolean man;
public static int cc;
public static final int MAX_SPEED = 120;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public boolean isMan() {
return man;
}
public void setMan(boolean man) {
this.man = man;
}
}