一种软件开发的综合技术。与面向功能相对
面向对象时直接将现实世界表示为软件的技术
基本指导思想:提高代码逻辑、降低代码复杂度、增强可维护性和重用性
封装、继承、多态,一种结构
理解封装:把相同属性的字段放到到一个类(创建实例)
继承:子类享有父类的方法,对共同点和不同点进行系统的整理。超类定义 全局性质、子类定义特有性质。
多态:同一条指令,控制同类实体,执行不同的程序。(让消息的发送方法通用)
类、多态、继承应该被定义为能提高软件的可维护性和可重用性的结构。
类将变量和函数汇总 创建独立性高的构件
多态和继承用于消除重复代码,创建通用性强的构件
实例在运行时将实例变量在内存中展开,轻松确保类的逻辑。
多态:可变为多种状态。实现调用端共有化。
golang 实现多态:定义函数接受接口类型,调用该函数传入任意实现了该接口的结构体,可用使用接口中声明的方法调用结构体。
进化opp结构之一:包,进一步对类型进行汇总的结构
之二:异常,将异常汇总、
之三:垃圾回收
面向对象是一种手段,其目的不在于被人们使用,而是提高程序的质量、可维护性和可重用性