[typescript] 클래스 내에서 멤버 변수에 접근 제어자 사용하기

TypeScript에서 클래스 내에서 멤버 변수에 접근 제어자를 사용하여 변수에 대한 접근을 제어할 수 있습니다. 접근 제어자는 클래스 내에서 멤버 변수 또는 메서드에 대한 접근 권한을 조절하는 역할을 합니다.

1. Public 접근 제어자

기본적으로 TypeScript의 멤버 변수는 public 접근 제어자를 가지고 있습니다. 이는 해당 변수에 대한 외부에서의 접근이 자유롭다는 것을 의미합니다.

class Car {
    public model: string;
    public year: number;
}

위의 예시에서 modelyear 변수는 public 접근 제어자를 가지고 있기 때문에 클래스 외부에서도 접근할 수 있습니다.

2. Private 접근 제어자

private 접근 제어자를 사용하여 멤버 변수에 대한 접근을 제한할 수 있습니다. 이 경우, 해당 변수는 클래스 외부에서 접근할 수 없습니다.

class Car {
    private mileage: number;
    private engineType: string;
}

위의 예시에서 mileageengineType 변수는 private 접근 제어자를 가지고 있기 때문에 클래스 외부에서는 접근할 수 없습니다.

3. Protected 접근 제어자

protected 접근 제어자를 사용하여 해당 클래스와 해당 클래스를 상속한 파생 클래스에서만 멤버 변수에 접근할 수 있도록 할 수 있습니다.

class Vehicle {
    protected make: string;
    protected color: string;
}

위의 예시에서 makecolor 변수는 protected 접근 제어자를 가지고 있기 때문에 해당 클래스와 해당 클래스를 상속한 파생 클래스에서만 접근할 수 있습니다.

4. Readonly 접근 제어자

readonly 접근 제어자를 사용하여 변수를 읽기 전용으로 만들 수 있습니다. 이는 변수의 값을 수정할 수 없도록 합니다.

class Circle {
    public readonly radius: number;

    constructor(radius: number) {
        this.radius = radius;
    }
}

위의 예시에서 radius 변수는 readonly 접근 제어자를 가지고 있기 때문에 이후에는 값을 수정할 수 없습니다.

접근 제어자를 활용하여 멤버 변수에 대한 적절한 접근 제어를 하는 것은 안정적인 코드를 작성하는 데 도움이 됩니다. 이는 프로그램의 유지 보수와 확장성에 유리한 영향을 미칠 수 있습니다.

더 많은 정보를 원하시는 경우 TypeScript 공식 문서를 참고하시기 바랍니다.