面向对象编程OOP(Oject Oriented Programming)
2019-08-21 16:35:02 14 举报
AI智能生成
JS面向对象编程 多多指教
作者其他创作
大纲/内容
面向对象编程思想
根据需求分析对象
特征
行为
创建对象
字面量
let obj = { };
调用系统构造函数
let obj = new Object();
自定义构造函数
创建构造函数
创建对象
通过对象调用属性和方法
实现功能及需求
优点
易维护,易复用,易扩展,由于面向对象的特性,可以设计出低耦合的系统,是系统更加灵活,更加易于维护
缺点
性能比面向过程低
面向对象特性
封装
就是包装
一个值存储在一个变量中
一堆重复代码放在一个函数中
一系列的属性放在一个对象中
一些功能类似的函数(方法)放在一个对象中
好多相似的对象放在一个JS文件中
继承
父类级别与字类级别之间的联系
JS可通过构造函数模拟类
继承通过原型链来实现
原型目的
节省空间
原型作用
数据共享
继承方式
原型继承
通过改变子构造函数原型的指向
Son.prototype=new Father();
解决了方法的继承
借用构造函数继承
call()
可以调用函数
fun.call()
可以改变函数的this指向
fun.call(obj)
此时这个函式的this就只指向了obj这个对象
解决了属性的继承
组合继承
原型继承+构造函数继承
既能解决属性问题,又能解决方法问题
拷贝继承
for...in遍历
把对象中需要共享的属性或方法直接遍历的方式复制到另一个对象中
作用
为了节省空间
多态
面向过程编程POP(Process-Oriented programming)
分析问题
分析步骤
用函数一步一步实现
依次调试
面向过程,按照我们分析好了的步骤,按照步骤解决问题
优点
性能比面向对象高,适合跟硬件联系很紧密的东西,例如单片机就采用面向过程编程
缺点
没有面向对象易维护,易复用,易扩展
收藏
0 条评论
下一页