让你彻底理解Typescript中静态成员和抽象方法

简介: 让你彻底理解Typescript中静态成员和抽象方法

1.Typescript中static详解


静态成员:在类中通过 static 修饰的属性或者方法


那么就是静态的属性静态方法


也称之为:静态成员(静态成员包含静态属性和静态方法)


静态成员在使用的时候通过【类名.静态属性】来访问


2.访问和修改static静态成员的小栗子


class Person{
    // 类中默认有一个内置name属性
    // 静态属性myname
    static myname:string='小可爱'
    sayHi() {
        console.log('sayHi')
    }
}
const per = new Person();
// 访问类中的静态属性
console.log(Person.myname);
// 修改类中的静态属性
Person.myname = '大可爱'
console.log(Person.myname);
//输出[大可爱]


3.抽象方法


抽象类中包含抽象方法:(抽象方法一般【没有任何具体内容】的实现)


抽象类中也可以包含实例方法


抽象类是不能够被实例化


抽象类可以让子类进行实例化以及实现内部所有的抽象方法


抽象类中也可以有抽象属性


{但是在实际开发过程中抽象类中一班不会有抽象属性}


我们知道了抽象类中可以包含:抽象属性  抽象方法  实例方法


ps:子类继承了抽象类,子类就必须实现抽象类中的抽象方法


4.写抽象类的注意点


abstract class Animals{
    // 这样写法是错误的,
    // 因为抽象方法一般没有任何具体内容的实现
    // abstract eat (){
    //     console.log('跑着吃,跳着吃')
    // }
    abstract eat()
}
// 这样的写法是错误的。
// 因为:抽象类不能够被实例化
// let dog=new Animals()


5.抽象类


abstract class Animals{
    // 这样写法是错误的,
    // 因为抽象方法一般没有任何具体内容的实现
    // abstract eat (){
    //     console.log('跑着吃,跳着吃')
    // }
    abstract eat()
    abstract sleep();
    // 抽象类中的抽象属性
    abstract myname: string
    // 抽象方法也可以包含实例方法
    say() {
        console.log('你好啊')
    }
}
// 子类继承了抽象类,子类就必须实现抽象类中的抽象方法
class Dog extends Animals {
    // 重新实现抽象类中的抽象方法
    eat() {
        console.log('我是狗,趴着吃')
    }
    // 重新实现抽象类中的抽象方法
    sleep() {
        console.log('我是狗,趴着睡')
    }
    // 实现抽象属性
    myname: string="狗子"
}
// 实例化
let xiaohei = new Dog();
// 直接调用方法
xiaohei.eat();//我是狗,趴着吃
// 调用的是抽象类中的实例方法
xiaohei.say();//你好啊
// 修改类中的属性
xiaohei.myname = '小黄狗'
console.log(xiaohei)
// 输出 Dog { myname: '小黄狗' }


相关文章
|
1月前
|
JavaScript 前端开发 Java
TypeScript 类 第一章【类,继承,修饰符】
TypeScript 类 第一章【类,继承,修饰符】
44 1
|
8月前
TypeScript-类存取器 和 TypeScript-抽象类
TypeScript-类存取器 和 TypeScript-抽象类
42 0
|
1月前
|
JavaScript 编译器
TypeScript中泛型在函数和类中的应用
【4月更文挑战第23天】TypeScript的泛型在函数和类中提供了灵活性,允许处理多种数据类型。了解泛型是掌握TypeScript类型系统的关键。
|
1月前
|
JavaScript
类和继承在TypeScript中的使用详解
【4月更文挑战第23天】TypeScript中的类和继承详解:使用`class`定义类,包含属性和方法,如`Animal`示例。通过`extends`实现继承,如`Dog`继承`Animal`,可重写父类方法。使用访问修饰符`public`、`protected`、`private`控制成员可见性。抽象类和抽象方法用于定义基类和强制子类实现特定方法,提升代码组织和可维护性。
|
1月前
|
JavaScript
如何在 TypeScript 中定义类
如何在 TypeScript 中定义类
24 0
|
8月前
|
JavaScript
TypeScript-继承和函数、函数声明和重载
TypeScript-继承和函数、函数声明和重载
42 0
TypeScript-继承和函数、函数声明和重载
|
8月前
|
JavaScript
TypeScript-类属性修饰符
TypeScript-类属性修饰符
39 0
|
10月前
|
存储 Kotlin
Kotlin中嵌套类、数据类、枚举类和密封类的详解
Kotlin中嵌套类、数据类、枚举类和密封类的详解
74 1
|
10月前
|
JavaScript
TypeScript 抽象类的详细使用
TypeScript 抽象类的详细使用
63 0
|
11月前
|
JavaScript
TypeScript类和继承
TypeScript中的类和继承可以帮助我们更好地组织代码,并且使得代码更易于维护和扩展。在TypeScript中,可以使用class关键字来定义一个类,然后使用extends关键字来实现继承