一)面向对象设计思想大图:
https://www.cnblogs.com/shijinglu2018/p/10134447.html
二)面向对象实用举例子:
https://www.cnblogs.com/shijinglu2018/p/11142395.html
三)接口和抽象类的使用场景上的区别:
1)从特点上来说,抽象类是从子类中抽象出来的共性,而接口只是有一个抽象方法,主要用于多实现和重写;
2)从规则上来讲,抽象类中的方法可以是普通方法,也可以是抽象方法,但是接口里面的方法必须是抽象方法,派生类必须重写接口中的所有抽象方法;
3)从程序设计的角度来看,若派生类的都具有某同一功能,则在超类中设计为普通方法,若派生类中有某一方法,不同的派生类有不同的实现,则设计为抽象方法,然后派生类开始重写超类的方法;将部分派生类所共有的行为,抽到接口中若又继承又实现时,应使用接口接口是对继承的单根性的扩展;
说明:接口和继承的作用主要是提高代码的复用性,利于后期维护;而多态的作用是提高代码的灵活性,封装的作用是提高程序的可读性和安全性;