3

一、面向对象编程简介

1.定义: Object Oriented Programming,简称OOP,是一种程序设计思想。OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数。
2.好处:

(1)、维护简单:模块化是面向对象编程中的一个特征。实体被表示为类和同一名字空间中具有相同功能的类,我们可以在名字空间中添加一个类而不会影响该名字空间的其他成员。

(2)、可扩充性:面向对象编程从本质上支持扩充性。如果有一个具有某种功能的类,就可以很快地扩充这个类,创建一个具有扩充的功能的类。

(3)、代码重用:由于功能是被封装在类中的,并且类是作为一个独立实体而存在的,提供一个类库就非常简单。

二、实例

下面给大家举了几个示例达到的效果一致,但用了不同的方法 (最后一种为完整的利用面向对象编程)*注:具体的详解在代码中
1.实例图:
图片描述

2.代码:
第一种:(直接打印)

      console.log("车名:汽车,轮胎:4");
      console.log("车名:自行车,轮胎:2");

第二种:(*)

  // 面向过程 函数编程
      function Che(name,geshu){//利用了函数的参数传入
        console.log("车名:"+name+","+"轮胎:"+geshu+"!");
      }
      // 定义参数的值
      Che("汽车","4");
      Che("自行车","2");
      // 调用的这里只是传入对应可变参数的值
      // 这种方法叫做【面向过程】的编程方法,相对于上一种更便于改动

第三种:(*)

      // 面向对象编程
      var qiche={//"qiche"为对象的自变量
        name:"汽车",
        geshu:"4",
        Che:function(name,geshu){//利用了函数的参数传入
          console.log("车名:"+this.name+","+"轮胎:"+this.geshu+"!");
        }
      };
      var zhixingche={
        name:"自行车",
        geshu:"2",
        Che:function(name,geshu){//利用了函数的参数传入
          console.log("车名:"+this.name+","+"轮胎:"+this.geshu+"!");//this.name代表当前对象
        }
      };

      qiche.Che();
      zhixingche.Che();//调用
      // 对象由属性和方法组成
      // 属性是对象特有的不变的,方法可以理解为对象的行为,方法通常为一个函数
      // 代码重复的较多

第四种(*)

      // 面向对象编程  进阶
      // 类的概念
      // 对象是类的一个具体实例  如:汽车是车的一种
      // 类是对象的抽象   或者说  是由对象泛化  如:我们把汽车,自行车统一叫做车
      function Car(name,geshu){//Car叫类
        this.name=name;
        this.geshu=geshu;//=后面的为传入的参数
        this.Che=function(){
          console.log("车名:"+this.name+","+"轮胎:"+this.geshu+"!");
        }
      }
      //这个函数用来创建对象
      var qiche=new Car("汽车","4");
      var zhixingche=new Car("自行车","2");

      // 我们把这组用来创建对象的函数叫做【构造函数】
      // 【构造函数】的功能就是创建对象
      qiche.Che();
      zhixingche.Che();//调用

dawdler_Bo
275 声望34 粉丝

qd