初学java,第一次接触oop。oop全名为Object Oriented Programming (面向对象程序开发)
有一个故事就是工程师要修建一个隧道,OOA是Object-Oriented Analysis(面向对象分析)是第一步,拿到政府,社会和民众的需求报告,分析需求得出结论.之后交给OOD是Object Oriented Design(面向对象设计),设计模型得出图纸,最后才到了真正施工的时候,就是oop,完成修建实际操作的部分.
oop有三大特征:封装,继承,多态。
封装:封装就是通过访问权限修饰符,将类的属性和方法进行私有化,不让外部直接访问,而是通过专门的接口进行访问。
继承:当一个类继承了另一个类,那么这个类就是另一个类的子类,另一个类是这个类的父类。子类会继承父类全部的属性和方法,并且可以在这个基础上扩展自己的属性和方法
继承极大的提高了代码的耦合性,子类可以继承父类的方法,一定程度上简化了代码,但是也很大程度上限制了代码的灵活性,耦合性过高会使得后续代码的改进变得极为繁杂,容易牵一而动全身。
多态:指一个类相同的方法在不同情况下有不同的表现