面向对象之“封装”
首先,一类事物有它的属性和行为(方法),其中属性描述同一类事物的特征,行为可以描述事物可以做的操作。 封装就是将同一类事物的共同点(属性和行为)归到一类中去,以便可以方便的调用,同时又不依赖其他的事物来完成对自己的操作。就像一个国家,有自己的国家特色(属性)和政治管理方式(行为)。它可以通过海关等对外开放的接口和其他国家进行经济文化等交流。某一天,这个国家需要选举总统(内部改变),只会在其本国内部产生的影响,别的国家的政治经济形式(属性和行为)并不影响(减少耦合)。
封装的好处:
1、良好的封装能够减少耦合。
2、封装的内部可以随意修改,不会影响外部的使用。
3、具有清晰的对外接口。比如public定义的方法和字段。
面向对象之“继承”
继承用一句话说就是,继承是指一个对象直接使用另一对象的属性和方法。父类和子类的这种关系就是“is -a”。就像哺乳动物(父类)和猫(子类)。猫可以继承哺乳动物的的胎生,哺乳、恒温等属性。同时又有自己的行为和属性,比如捉老鼠(行为)。
继承三个特点:
1、子类(猫)拥有父类(哺乳动物)非private的属性和功能
2、子类(猫)有自己的行为和属性,比如捕捉老鼠。
3、子类可以以自己的方式实现父类的功能。比如猫是恒温的,但是温度与其他的哺乳动物不同。
优点:
子类的公共代码共享,避免重复。
面向对象之“多态”
多态就是不同的对象执行相同的动作,但是通过他们自己的代码实现。不同的哺乳动物都可以鸣叫,但是叫声不同。这就是多态。
简单的是说:指一个程序中同名的方法共存的情况,调用者只需使用同一个方法名,系统会根据不同情况,调用相应的不同方法,从而实现不同的功能。