class(类),构造方法(constroctor)实例化对象,继承,静态属性和方法(static),调用属性和方法的基本应用

129 阅读1分钟
<script>
  // 定义一个类,并构造方法
  class Father {
    constructor(name, age, sex) {
      this.name = name;
      this.age = age;
      this.sex = sex;
    }
    // 添加一个方法
    sayhelo() {
      console.log("这是父类的sayhello方法");
    }
    // 添加一个静态方法,类可以直接调用
    static sayHi() {
      console.log("这是类可以直接调用的方法");
    }
  }
  // 子类继承自父类
  class Son extends Father {
    // 开始给儿子类构造方法
    constructor(name, age, sex) {
      // 这些属性来自父亲,直接用super就可以继承过来了
      super(name, age, sex); /* 直接super(),把父亲的属性写在()里面 */
    }
    /* 儿子类也可以有自己的方法和属性 */
    saymy() {
      console.log("这是我自己的方法");
    }
  }
  //   实例化一个自类对象,打印出里面的方法和属性
  const xiaoming = new Son("小明", 12, "男");
  console.log(xiaoming.name);
  xiaoming.sayhelo();
  xiaoming.saymy();
  Father.sayHi(); /* 因为是静态static,所以可以直接父类调用,不需要实例化 */
</script>