zoukankan      html  css  js  c++  java
  • [Javascript] ES6 Class Constructors and the Super Keyword

    When the ES6 class shipped back in 2015, a number of additional keywords came with it. Two of these are constructor and super. Both of these are specific to the class keyword and make working with classes manageable. Both are utilized when the new keyword is used to create a new instance of a classconstructors are called initially with the new keyword and super is how a subclass can utilize it's parent's methods (like it's parent's constructor function) within that child class

    You have to call super() function when you extends one class:

    class Rectangle {
      constuctor(height, width) {
        this.name = 'Rectangle'
        this.height = height
        this.width = width
      }
    }
    
    class Square extends Rectangle {
      constructor(length) {
      super(length, length)
      this.name = 'Square'
      }
    }
    
    const myShape = new Square(1)
    
    console.log(myShape)

    Again, even if our rectangle class did not have a constructor, we'd still need to call super within the square's constructor because it is required when we're working with subclasses that have constructors and when the this keyword is used in the constructor.

    class Rectangle {
    
    }
    
    class Square extends Rectangle {
      constructor(length) {
         super()
         this.name = 'Square'
      }
    }
  • 相关阅读:
    30分钟学会如何使用Shiro
    Java NIO 系列教程
    Kafka学习之路
    Kafka消费组(consumer group)
    潭拓寺
    如何设置 ssh secure shell 支持中文
    goaccess nginx 日志分析
    【转】服务化框架技术选型与京东JSF解密
    java ee wildfly 批处理 job 工作
    wildfly 10上使用最新的 Hibernate ORM OGM
  • 原文地址:https://www.cnblogs.com/Answer1215/p/12003924.html
Copyright © 2011-2022 走看看