javaScript 高级语法 - class创建对象,继承 extends,super,类中this指向问题

1.class 创建对象

class Human { //
  constructor(id,name) { //构造器
    this.id=id; //成员变量
    this.name=name;
  }
  info(){ //方法
    console.log("info:"+this.id+this.name);
  }
}
//静态变量
Human.age=20;
//静态方法
Human.parse=function () {
  console.log(this);
}
//创建对象
var human=new Human(1,"levi");

类中有:

构造器(只能有一个构造器 不能通过形参区分 因为没有重载机制 )

方法 (方法不能同名 因为没有重载机制)

成员变量 (只能通过对象访问)

静态变量 (只能通过类访问)

静态方法 (只能通过类访问)

 

2.继承 extends

子类如果有构造器 构造器中的第一行代码必须要调用父类构造器super(),子类没有构造器可以不写

子类与父类,成员变量与方法重名时 遵循就近原则 调用的是子类自己的方法与属性 不存在方法的重写

继承关系中 子类是可以访问到父类的所有方法与属性的

 

3.super

super 关键字的使用与java相同(如果你学过java)

访问父类中的构造器,方法,属性

 

4.类中this的指向问题

类中的构造器中的this指向当前类

方法中的this指向的是谁调用当前方法,当前方法的this就是指向谁

posted on 2023-02-08 11:15  Mikasa-Ackerman  阅读(102)  评论(0编辑  收藏  举报

导航