class 创建类
class People{
constructor(name="王一",age=16) { // constructor 构造函数
this.name=name
this.age=age
}
showInfo(){ //方法
console.log(this.name)
}
show(){ //方法
console.log(this.name)
}
}
let p1=new People()
let p2=new People("王二",13)
console.log(p1.showInfo==p2.showInfo)
console.log(p1)
p1.showInfo()
继承? extends A extends B A继承B
class Student extends People{
constructor(name,age,score){
super(name,age) //super永远写在最上面,自己的单独属性写在super后面, this出现在super之后.
this.score=score
}
showInfo(){
console.log(this.score)
}
}
let s1=new Student("张三",29,100)
console.log(s1)
s1.showInfo()
class的静态属性和静态方法?
静态属性和静态方法: 通过类直接使用或者直接获取的 不需要实例化对象来实现.
static 关键字
class People{
static size=0 //静态属性
constructor(name,age){ //实例化对象属性
this.name=name
this.age=age
//this
People.setSize()
}
static getSize(){ //静态方法
return People.size
}
static setSize(){ //静态方法
People.size++
}
}
//通过一个属性 记录一下 当前通过类 创建了多少个对象 size People.size
let p1=new People("张三",12)
let p2=new People("张三",12)
let p3=new People("张三",12)
let p4=new People("张三",12)
let p5=new People("张三",12)
console.log(People.Size())
console.log(People.getSize())