美文网首页
面向对象继承

面向对象继承

作者: ADMIN_drict | 来源:发表于2017-10-12 20:07 被阅读0次

    一、继承是面向对象重要的特征。继承是指在一个类基础上定义一个新类,原有的类叫做父类,新生成的类叫子类,继承的过程是一个从一般多特殊的过程。
    二、继承概念的实现方式有三类:实现继承、接口继承和可视继承。
    1、实现继承是指使用基类的属性和方法而无需额外编码的能力;
    2、接口继承是指仅使用属性和方法的名称、但是子类必须提供实现的能力;
    3、可视继承是指子窗体(类)使用基窗体(类)的外观和实现代码的能力。

    三、继承的特点:
    第一、子类拥有父类的属性和方法;
    第二、子类可以有自己新的属性和方法;
    第三、子类可以重写父类的方法;
    第四、可以声明父类,创建子类。

    四、面向对象中使用继承的好处:
    继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确描述共性的方法,对象的一个新类可以从现有的类中的派出,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。

    五、与继承有关的注意事项:
    继承是单方向的,即派生类可以继承和访问基类中的成员,但基类无法访问派生类的成员。
    代码如下:

    <style>
            div {
                width: 100px;
                height: 100px;
                background: red;
                position: absolute;
            }
    
            #box2 {
                background: green;
            }
    
            #box3 {
                background: blue;
            }
        </style>
      
        <div id="box1"></div>
        <div id="box2"></div>
        <div id="box3"></div>
    
        <script src="DragBox.js"></script>
    <script>
    function DragBoxText(boxId) {
                // 继承 DragBox 的属性
                DragBox.call(this, boxId);
            }
            // 继承 DragBox 的方法
            DragBoxText.prototype = new DragBox();
    
            //  修改了父亲了的方法
            DragBoxText.prototype.move = function(x, y) {
                
                DragBox.prototype.move.call(this, x, y)
    
                this.ele.innerHTML = x + ", " + y;
            }
            // 让 box1 具备拖拽的能力
            new DragBoxText("box1");
            new DragBoxText("box2");
            new DragBoxText("box3");
    </script>
    

    相关文章

      网友评论

          本文标题:面向对象继承

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