javascript中的面向对象

1、什么是面向对象?

js中一切都是对象!所有对象的底层都类似hash数组。

在程序中都是用一个对象来描述现实中一个具体的东西,所谓面向对象就是类的实例化。

现实中的一个东西都包含属性和功能:

  属性:描述一个东西特点的变量,一个值

  功能:东西可以执行的操作

什么是对象:封装多个数据和方法的存储空间

什么是自定义对象:封装现实中一个东西的属性和功能的存储空间。

现实中东西的属性会成为对象中的属性变量。

现实中东西的功能,会成为对象中的方法(函数)

创建对象的方式:

1. 对象直接量
      var obj={"属性名":值,
            xxx:...,
               "方法名":function(){ ...this.属性名... }
               }
2. 使用New关键字
      var obj=new Object(); //创建一个空对象
      obj.属性名=值;
      obj.方法名=function(){...this.属性名...}
3. 利用构造函数*反复*创建*相同结构*的对象:
      构造函数:描述一类对象结构的特殊函数
      2步:
      1. 定义构造函数
    function Sumname(value1,.....){
             this.属性名=属性参数1;
             //在当前正在创建的对象中添加一个属性名
         //赋值为属性参数1的值
             ...
             this.方法名=function(){
                  ...this.属性名...
             }
        }
      2. 利用构造函数创建对象:
        var obj=new Sumname(value1,...);

2、面向对象有什么特点?

面向对象三大特点:封装  继承  多态

  封装:将描述同一个东西的属性和方法,定义在一个对象中

  继承:父对象中的属性和方法,子对象可直接使用

  多态:同一个对象,在不同情况下,呈现不同的状态

  注意: 重载->同一方法名,传入参数不同,执行不同的操作

      重写:子对象觉得父对象的成员不好用,可自己定义一个,覆盖父对象的成员

posted @ 2016-06-20 18:34  逗伴不是瓣  阅读(323)  评论(0编辑  收藏  举报