zoukankan      html  css  js  c++  java
  • 构造函数的继承

            // 构造函数
            //     本质还是一个函数
            //     是一个专门生成对象的函数
            //     生成的这个对象,有属性属性值,还有函数方法

            // ES5的构造函数语法
            function CreateObj1(name,age){
                this.name = name;
                this.age = age;
            }
            createObj1.prototype.fun = function(){
                console.log('我是ES5语法创建的实例化对象')
            }

            // ES6的构造函数语法
            class CreateObj2{
                constructor(name,age){
                    this.name = name;
                    this.age = age;
                }
                fun(){
                    console.log('我是ES6语法创建的实例化对象')
                }
            }

            // 所谓的继承
            // 创建新的构造函数时,有一些属性或者方法,与之前的构造函数相同
            // 为了节约代码,可以从之前的构造函数中,继承属性和方法
            // 对不同的属性和方法,再重新定义
            // 为了生成构造函数时,节约代码
     
    // ES6 构造函数的继承语法

            // 1, ES5 或者 ES6 先声明一个构造函数

            // 父类构造函数
            function CreateObj1(name,age){
                this.name = name;
                this.age = age;
            }
            CreateObj1.prototype.fun = function(){
                console.log('我是ES5语法创建的实例化对象')
            }

            // 继承父类构造函数的属性和方法
            // 在继承父类属性的同时,也会继承父类所有的方法

            class Son extends CreateObj1{
                constructor(name,age,sex){
                    super(name);
                    this.age = age;
                    this.sex = sex;
                }

                fun2(){
                    console.log('我是自己的fun')
                }
            }

            const obj1 = new Son( '张三' , 18 ,'男');
            console.log(obj1);


            // 总结:
            // 1,继承语法 
            //   class 子类构造函数名称 extends 父类构造函数名称{}
            // 2,constructor 构造器中,定义参数
            //   参数可以是从父级继承来的,也可以是子类自己定义的
            //   从父类继承的属性必须用 super(属性) 来定义
            //   可以继承父类所有的属性或者一部分属性
            // 3,也可以定义子类的属性和子类的方法
            // 4,父类的所有方法都会继承
    右侧打赏一下 代码改变世界一块二块也是爱
  • 相关阅读:
    Autolayout及VFL经验分享
    在iOS7中修改状态栏字体的颜色
    IOS 入门开发之创建标题栏UINavigationBar的使用(二)
    IOS 使用横屏
    NSDictionary转化为实体类对象
    xcode SVN
    IOS model的getter和setter方法
    深入理解Java:注解(Annotation)--注解处理器
    深入理解Java:注解(Annotation)自定义注解入门
    div 的相对定位与绝对定位
  • 原文地址:https://www.cnblogs.com/ht955/p/14145190.html
Copyright © 2011-2022 走看看