美文网首页
面向对象(一)三大特性

面向对象(一)三大特性

作者: 凸小布 | 来源:发表于2017-02-23 19:04 被阅读13次
    • 面向对象的三大特性
    • 封装
    • 多态
    • 继承

    封装

    • 作用:方便代码的维护,提高代码的复用性,更安全的数据访问的方式
    • 注意 : js中的封装多了一层意思,就是使用对象来封装变量和函数
    <script>
        var type = "喜剧";
        var actors = ["赵丽颖","彭于晏","李荣浩","邓超"];
        var showTime = "2017-2-17 2017-3-17";
        var director = "韩寒";
        var play = function(){
            console.log("播放.....");
        }
    </script>
    
    // 下面使用对象来封装变量和函数
    <script>
        var film = {
            type : "喜剧",
            actors : ["赵丽颖","彭于晏","李荣浩","邓超"],
            showTime : "2017-2-17 2017-3-17",
            director : "韩寒",
            play : function(){
                console.log("播放.....");
            }
        };
        console.log(film);
    </script>
    

    继承

    • 现实生活中的继承:继承遗产,一个人获得另一个人所拥有的财富或者是资源的方式。
    • 编程语言中的继承:一个类(对象)获得另外一个类(对象)的属性和方法的一种方式。
    • 面向对象的语言特征:类(C++)C(没有类)
    • js中没有类(class),支持面向对象的语言。
    <script>
        var obj1 = {name:'wyq', age:18};
        var obj2 = {};
        console.log(obj1);
        console.log(obj2);
       
        //obj2获得obj1的属性或者是方法
        //混入式继承
        for(var k in obj1){
            console.log(k + ':'+ obj1[k]);
            obj2[k] = obj1[k];
        }
        console.log(obj2);
    </script>
    

    多态

    • 多种形态
      • 表现:
        • 对于相同的操作,不同的对象表现出不同的行为。
        • 隐藏不同。
    • 实现:
      • js天生具备多态的特性(弱类型的语言)

    相关文章

      网友评论

          本文标题:面向对象(一)三大特性

          本文链接:https://www.haomeiwen.com/subject/aowbwttx.html