[typescript] 클래스 외부에서 protected으로 지정한 변수에 접근하기

클래스의 멤버 변수를 protected로 지정하면 해당 클래스 내부와 파생 클래스에서만 접근할 수 있게 됩니다. 그러나 때로는 클래스 외부에서도 이 변수에 접근해야 하는 경우가 있습니다. 이번 글에서는 TypeScript에서 protected 변수에 외부에서 접근하는 방법에 대해 알아보겠습니다.

protected 변수란?

protected로 지정된 변수는 해당 클래스 또는 파생 클래스 내부에서 접근할 수 있습니다. 클래스 외부에서는 직접적으로 접근할 수 없지만, 파생 클래스를 통해 간접적으로 접근하는 방법이 있습니다.

외부에서 protected 변수에 접근하는 방법

아래와 같이 protected 변수를 가진 클래스가 있다고 가정해봅시다.

class BaseClass {
    protected protectedVariable: string = "protected variable";
}

이제 이 클래스를 상속한 파생 클래스를 만들고, 해당 파생 클래스의 인스턴스를 사용하여 protected 변수에 접근할 수 있습니다.

class DerivedClass extends BaseClass {
    public getProtectedVariable() {
        return this.protectedVariable;
    }
}

const instance = new DerivedClass();
console.log(instance.getProtectedVariable()); // 출력: "protected variable"

위 예제에서 DerivedClass를 통해 protectedVariable에 접근할 수 있음을 확인할 수 있습니다.

Recap

이 글에서는 TypeScript에서 protected로 지정된 변수에 외부에서 접근하는 방법에 대해 알아보았습니다. protected 변수는 직접적으로 클래스 외부에서 접근할 수 없지만, 파생 클래스를 통해 간접적으로 접근할 수 있습니다.

프로그래밍 언어의 특성을 활용하여 적절한 접근 방법을 선택하는 것이 중요합니다. 이를 통해 코드의 안정성과 유지보수성을 높일 수 있습니다.

마지막으로, protected 변수에 대한 접근 방법에 대해 더 알고 싶다면 TypeScript 공식 문서를 참고하는 것을 추천합니다.

References