解决问题时把事物抽象成对象, 然后赋予对象一些属性和方法, 让每个对象执行自己的方法, 从而解决问题.
优势
- 重复使用, 灵活, 可扩展
和面向过程区别是: 面向过程把问题解决分成不同方法, 而面向对象把问题解决归于不同对象,对象中包含属性和方法,通过执行对象解决问题. 也就是说把方法分别归于对象中.这样可以更灵活的扩展每个对象中的方法,并且重复利用代码, 维护性也更好. - 类
封装成抽象的类, 对内部数据也是有不同级别的保护. - 继承
让对象继承一类对象的属性.
实现继承: 直接使用父类属性和方法.
接口继承: 只是用属性方法的名称, 子类必须提供实现的能力 - 多态
一个类的相同的方法在不同情况有不同形式.
五大原则
- 单一职责原则
一个类的功能要单一 - 开放封闭原则
一个模块应该有开放的扩展性, 封闭的更改性. 增加功能不用修改原有代码, 一开始就把不同功能分开,公共的功能抽象出来
-里式替换原则
子类可以替换父类 - 依赖倒置原则
具体依赖抽象, 上层依赖下层 - 接口分离原则
模块间使用抽象接口隔离
网友评论