封装
- 隐藏属性值和实现细节,属性尽量私有,提供相应的set get方法,保证类的完整性。
- 例如:
class Cat1 {
privite String color;
public void setColor(String color){
this.color=color;
}
public String getColor(){
return this.color;
}
}
class Cat2 {
public String color;
}
Cat1 cat1=new Cat1();
cat1.setColor("Light gray")
cat1.getColor();
Cat2 cat2=new Cat2();
cat2.color="Light gray";
上面都可以对对象属性值修改,如果我们多处对属性值修改,需要把所有“Light gray” 的cat 归到 “gray”中。显然我们通过方法能够方便统一的去修改,没有破坏类。如果我们通过赋值方式可能查找代码要很多,破坏了封装。对于自身代码的维护造成了困难。
继承
- java中只允许单继承,子类能集成父类的非私有的属性和方法。方法的继承,就有了方法的重写。
- java中只允许单继承,但是接口可以多实现
- 父类抽象方法子类必须实现
- 方法重写,顾明思议,重新实现方法,出现在继承和接口实现;方法重载,同一方法名称可以传不同参数(个数不同,类型不同)
多态
- 有了继承和接口就有了多态。子类的类型可以转化成父类的类型,进而可以用父类的类型控制子类方法属性,这样多个子类的行为可以得到统一父类的控制。有利于代码的解耦,封装,保持逻辑的完整性。