typescript final 따라하기

YOUNGJOO-YOON·2022년 2월 20일
0

typeScript

목록 보기
53/65
class Message{
    private constructor(private messages:string[]){}

    static create(messages:string[]){
        return new Message(messages);
    }
}

const msg:Message = new Message; // error!
const message:Message = Message.create(['Hola!']); // good

타입스크립트에서 final을 따라해보자.

final을 응용하여 싱글톤을 만들어 낼 수 있다.

아무튼 final이 뭔지 설명하자면 클래스나 메서드를 확장 혹은 오버라이드 할 수 없게 만드는 키워드이다. (다른 oop lang에서)

class의 constructor를 private으로 생성하면 해당 class를 생성, 확장할 수 없게 된다. 하지만 static method로 해당 클래스를 생성하여 돌려준다면 확장이 막힌 클래스를 생성할 수 있다.

final이 없으므로 이렇게 구현하면 되는 것이다

profile
이 블로그의 글은 제 생각을 정리한 글과 인터넷 어딘가에서 배운 것을 정리한 글입니다. 출처는 되도록 남기도록 하겠습니다. 수정 및 건의 오류 등이 있으면 언제든지 댓글 부탁드립니다.

0개의 댓글