静态属性,静态方法
class Person{
public name:string;
public age:number=20;
static sex='男'//静态属性
constructor(n:string){
this.name=n
}
run():void{
return '$(this.name)在运动'
}//实例方法
static sun(){
alert '$(Person.age)是性别'
}//静态方法,里面没法直接调用类里面的属性
}
Person.sun()
多态
- 父类中定义一个方法不去实现,让继承它的子类去实现,每一个子类有不同的表现,也是继承的一种
class animal{
name:string;
constructor(name:string){
this.name=name
}
eat(){
console.log('吃的方法')//吃的方法不知道,具体吃什么,由他的子类去实现,每个子类的表现不一样
}
}
class dog extends animal{
constructor(name:string){
super(name)
}
eat(){
return this.name+'吃粮食'
}
}
class cat extends animal{
constructor(name:string){
super(name)
}
eat(){
return this.name+'吃老鼠'
}
}
抽象方法
- 用abstract定义的抽象方法和抽象类,用来定义标准,抽象方法并不包含具体的实现,定义后的抽象类要求它的子类必须实现其定义的抽象方法
网友评论