TypeScript の抽象メソッド

Rana Hasnain Khan 2022年8月18日
TypeScript の抽象メソッド

TypeScript の抽象メソッドとは何かを例を挙げて紹介します。また、TypeScript の抽象クラスを例とともに示します。

TypeScript の抽象メソッド

商用アプリケーションで作業するときは、後で複数の目的に使用できるいくつかの一般的な動作または機能を定義する必要があります。この目的のために、TypeScript には abstract と呼ばれる機能が付属しています。このキーワードを使用してクラスを定義し、抽象クラス内の抽象メソッドを使用して一般的な動作を定義できます。

abstract という単語は、主に TypeScript のクラスに使用されます。より多くのクラスを派生させることができるクラスで共通の動作を定義する場合、それは抽象クラスと呼ばれます。

キーワード abstract は、抽象クラスを定義するために使用されます。

すべての抽象クラスは、キーワード abstract で定義された 1つ以上の抽象メソッドで構成されます。抽象メソッドは、共通の機能を派生クラスに転送するメソッドです。

派生クラスは、メインクラスで定義されているすべての抽象メソッドを定義する必要があります。

以下に示すように、抽象メソッドを使用して抽象クラスを作成する例を見てみましょう。

# TypeScript
abstract class Course {
    courseName: string;

    constructor(courseName: string) {
        this.courseName = Typescript;
    }

    abstract search(string): Course;
}

上記の例からわかるように、抽象クラス Course を作成し、その中で抽象メソッド search を定義しました。以下に示すように、このクラスから別のクラスを派生させ、そのメソッドを使用してみましょう。

# TypeScript
abstract class Course {
    courseName: string;

    constructor(courseName: string) {
        this.courseName = courseName;
    }
    abstract search(string): Course;
}

class Subject extends Course {
    subCode: number;

    constructor(courseName: string, subCode: number) {
        super(courseName);
        this.subCode = subCode;
    }

    search(courseName:string): Course {
        return new Subject(courseName, 1);
    }
}

let sub: Course = new Subject("Typescript", 101);

let sub2: Course = sub.search('Javascript');

このようにして、派生クラス内で抽象メソッドを使用できます。

Rana Hasnain Khan avatar Rana Hasnain Khan avatar

Rana is a computer science graduate passionate about helping people to build and diagnose scalable web application problems and problems developers face across the full-stack.

LinkedIn