끄적끄적 메모장
[TypeScript] Public, Private, Protected에 대해서 알아보자 본문
TypeScript에서 접근 제한자가 있습니다.
접근제한자란? 말 그대로 접근을 제한하기 위해 사용됩니다. 클래스 및 인터페이스 등에 대한 접근을 통제하는 역할을 합니다.
접근 제한자는 Public, Private, Protected와 같이 세 가지 종류가 있습니다.
접근제한자 | public | protected | private |
클래스 내부 | O | O | O |
자식 클래스 내부 | O | O | X |
클래그 인스턴스 | O | X | X |
먼저 Private를 활용한 예시를 보자
class MyClass {
private privateVariable: number = 10;
private privateMethod(): void {
console.log('This is a private method.');
}
}
위 코드와 같이 private키워드를 사용하여 멤버를 클래스 내부에서만 접근 가능하도록 지정할 수 있습니다.
두번째로 Protected를 활용한 예시를 보자
class MyBaseClass {
protected protectedVariable: number = 20;
protected protectedMethod(): void {
console.log('This is a protected method.');
}
}
class MySubClass extends MyBaseClass {
constructor() {
super();
this.protectedVariable = 30; // 접근 가능
}
protectedMethod(): void {
console.log('This is an overridden protected method.'); // 접근 가능
}
}
protecter 키워드를 사용하여 해당 멤버를 해당 클래스 및 하위 클래스에서만 접근 가능하도록 지정할 수 있습니다.
세번쨰로 Public를 활용한 예시를 보자
class MyPublicClass {
public publicVariable: number = 40;
public publicMethod(): void {
console.log('This is a public method.');
}
}
public 키워드를 사용하여 해당 멤버가 어디든 접근 가능하도록 지정할 수 있습니다. public은 생략이 가능하며, 기본적으로 모든 멤버에는 public으로 간주됩니다.
아래 코드는 타입스크립트 코드를 자바스크립트 코드로 변형한 것이다.
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
보이는 것처럼 접근제한자가 타입스크립트에서만 사용된 걸 볼 수 있습니다.
자바스크립트에서는 없는 접근제한자 타입스크립트에서는 왜 존재하는 걸까요?
이는 접근제한자를 사용하면 클래스의 멤버에 대한 접근을 엄격하게 제어할 수 있습니다. 이는 코드 유지 보수성과 안정성을 향상시키고, 잘못된 사용을 방지하는 데 도움이 됩니다.
'프론트엔드 > TypeScript' 카테고리의 다른 글
[Typescript] tsconfig.json 에 대해서 알아보자 (0) | 2023.05.25 |
---|---|
[TypeScript] Interface에 대해서 알아보자 (0) | 2023.05.23 |
[TypeScript] 함수(function)에 대해서 알아보자! 2 (0) | 2023.05.16 |
[TypeScript] 함수(function)에 대해서 알아보자! (0) | 2023.05.16 |
[TypeScript] 기본 문법 알아보기 2 (0) | 2023.05.15 |
Comments