面向对象编程 OOP(Object Oriented Programming)
- 面向对象 是吧事物分解成一个个对象 然后有对象之间分工合作
- 面向对象 是以对象功能来划分问题 而不是步骤
- 在面向对象程序开发思想中 每一个对象都是功能中心 具有明分工
- 面向对象编程 具有灵活 代码可复用 容易维护和开发的优点 更适合多人合作的大型软件项目
面向对象的特性
- 封装性
- 继承性
- 多态性
面向过程和面向对象的对比
- 面向过程
优点:性能比面向对象高 适合跟硬件联系很紧密的东西
缺点:没有面向对象易维护 易扩展
- 面向对象
优点:易维护 易复用 易扩展 由于面向对象有封装 继承 多态的特性 可以设计出低耦合的系统是系统更加易于维护
缺点:性能比面向过程低
ES6 类
-
创建类
语法:class name { //class baby }
创建实例
var xx = new name()
类必使用 new 实例化对象
- 通过class 关键字 创建类 类名首字母大写
- 类里面有个 constructor 函数 可以接受传递过来的参数 同时返回实例对象
- constructor 函数只要 new 生成实例时 就会自动调用这个函数
- 如果我们不写这个函数 类也会自动生成这个函数
- 生成实例额 new 不能省略
- 注意语法规范 创建类 类名后面 不要小括号 生成实例 类名后面加小括号
- 构造函数 不需要加function
<script>
// 创建class 类
class Star {
constructor(uname, age) {
this.uname = uname
this.age = age
} // 多个函数方法之间 不要用逗号分隔
types(bian) {
// 类里面的函数 不需要写function关键字
console.log(this.uname + bian);
}
}
var swk = new Star('孙悟空', 500)
var zbj = new Star('猪八戒', 500)
console.log(swk);
console.log(zbj);
swk