TypeScript의 추상 메서드

Rana Hasnain Khan 2022년8월18일
TypeScript의 추상 메서드

TypeScript에서 추상 메서드가 무엇인지 예제와 함께 소개합니다. 우리는 또한 예제와 함께 TypeScript의 추상 클래스를 제시할 것입니다.

TypeScript의 추상 메서드

상용 응용 프로그램에서 작업할 때 나중에 여러 목적으로 사용할 수 있는 몇 가지 일반적인 동작이나 기능을 정의해야 합니다. 이를 위해 TypeScript에는 추상이라는 기능이 있습니다. 이 키워드를 사용하여 클래스를 정의하고 추상 클래스 내부의 추상 메서드를 사용하여 일반적인 동작을 정의할 수 있습니다.

abstract라는 단어는 주로 TypeScript의 클래스에 사용됩니다. 더 많은 클래스가 파생될 수 있는 클래스에서 공통 동작을 정의하려는 경우 이를 추상 클래스라고 합니다.

abstract 키워드는 추상 클래스를 정의하는 데 사용됩니다.

모든 추상 클래스는 abstract 키워드로 정의된 하나 이상의 추상 메소드로 구성됩니다. 추상 메서드는 공통 기능을 파생 클래스로 전송하는 메서드입니다.

파생 클래스는 기본 클래스에 정의된 모든 추상 메서드를 정의해야 합니다.

아래와 같이 추상 메서드를 사용하여 추상 클래스를 만드는 예를 살펴보겠습니다.

# TypeScript
abstract class Course {
    courseName: string;

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

    abstract search(string): Course;
}

위의 예에서 볼 수 있듯이 추상 메소드 search를 정의한 Course 추상 클래스를 만들었습니다. 아래와 같이 이 클래스에서 다른 클래스를 파생하고 해당 메서드를 사용하겠습니다.

# 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