面向对象心得

1、为什么要学习面向对象?

像 js  java  c#  php python 都是面向对象编程思想
它们的共同点:由两部分组成
                        (1)特点、属性、数据
                          (2)行为、动作、功能

2、创建对象的方式

        1、构造函数
                     格式:
                                function Cat(参数列表){
                                this.name       //   this代表new出来的对象
                                this.miaow = function(){
                                        执行语句1
                                  
                                  }
                                        new Cat(参数列表)代表创建对象
             2、函数创建的形式(工厂模式)
              function   create(){
                          var  obj = {
                               return  obj;
                          }
                  }
          3、总结:面向对象的特点:
                (1)封装(属性和行为都捆绑在一起)
                          函数:把代码困在一起
                          优点:重复使用
                                    便于管理;
        4、面向对象的语法
          var a = {};

            //添加属性元素
          a["name"]="jack";
                  //快速遍历对象
                       for(var i in a ){
                  console.log(a[i])
}
            5、  var a = {};
                      var b ={};
                           当a==b时;console.log(a==b);输出 【false】
            6、  function Dog(){
                    console.log("不要构造")
                    }
                          var  a  = new Dog();
               console.log(a instanceof Dog);//判断a 是否Dog的对象
            7、//执行流程:
                1.在构造函数中 找 有没有back行为
                        找到了,直接调用  结束
                          找不到,在原型语句上找
            function  Dog(){
              this.name = "狗狗";
                Dog.prototype.back = function(){
          console.log("汪汪");
}
        var  dog1 =  new Dog();
          dog1.back();
}




}


3、对象的属性和方法

          在js中可以对对象进行操作,如可以添加、修改、删除属性和方法。
            eg:  var a = new Object();
         (1)      获取属性或方法
        a)        对象名.属性(方法)名
        b)        对象名["属性(方法)名"]
(2)      添加属性
       a)        添加属性:
user.name="jack";
user.age=21;
user.sex="male";
       b)        添加方法
user.alert=function(){
alert("myname is:"+this.name);
}
(3)      修改属性和方法
修改一个属性和方法的过程就是用新的属性替换旧的属性,例如:
user.name="tom";
user.alert=function(){
     alert("hello,"+this.name);
}
(4)      删除属性和方法
删除一个属性和方法的过程也很简单,就是将其置为undefined:
user.name=undefined;
user.alert=undefined;
这样就删除了name属性和alert方法。

你可能感兴趣的:(面向对象心得)