3. 类 和 继承

class User {
  constructor(username, email, password) {
    this.username = username;
    this.email = email;
    this.password = password;
  }// constructor 构造方法,一个类必须有,没有会自带constructor(){}

  static countUsers() { // 静态方法
    console.log('there are 50 users');
  }

  register() {
    console.log(this.username+'is now registered!');
  }
}

let bob = new User('bob', 'bob@email.com', '123456');

bob.register(); // bob is now registered

User.countUsers(); // there are 50 users 调用静态方法

class Member extends User{ // 继承
  constructor(username, email, password, memberPackage) {
    super(username, email, password); // super 其实是在调用父类的constructor ,继承父类的this对象
    this.package = memberPackage;
  }

  getPackage() {
    console.log(this.username + 'is subscribed to the' + this.package + 'package');
  }
}

let mike = new Member('mike', 'mike@email.com', '123123', 'standard');

mike.getPackage();
mike.register(); // 继承父类的方法

 

关键问题:类的写法,继承写法,constructor, super, 静态方法的调用

posted @ 2017-03-10 00:40  涵叔  阅读(104)  评论(0)    收藏  举报