gongam-posts

공감

|

SM

SM

autumn

DH

JH

JH

타입스크립트 : 접근 제어자

제공

타입스크립트(TS)에서 사용하는 접근 제어자(Access Modifier)에 대해서 정리를 하려고 합니다. public(어디서나 접근 가능), protected(해당 클래스 및 상속받는 자식 클래스 내에서만 접근가능), private(해당 클래스 내부에서만 접근 가능)


TS 접근 제어자 : 종류

■ 타입스크립트(TS)의 class 에서 사용할 수 있는 접근 제어자는 총 3가지 입니다.
접근 제어자설명
public어디서나 접근 가능(기본값, 명시 하지 않으면 public)
protected해당 클래스 및 상속받는 자식 클래스 내에서만 접근 가능
private해당 클래스 내부에서만 접근 가능
<> ts
export class DataCleanupService {
  private cleanupInterval: NodeJS.Timeout | null = null;

  // public method: 외부에서 호출 가능
  public startScheduler() {
    console.log('Scheduler started');
  }

  // private method: 클래스 내부에서만 호출 가능
  private stopScheduler() {
    console.log('Scheduler stopped');
  }
}

<> ts
const serviece = new DataCleanupService();

service.startScheduler()  // 가능
service.stopScheduler()  //  에러
  1) 코드 설명
ⓐ private cleanupInterval: NodeJS.Timeout | null = null;
cleanupInterval : 속성이름
NodeJS.Timeout | null : NodeJS.Timeout : NodeJS.Timeout 값을 갖거나 또는 null 값을 갖는다
= null : 초기값 할당, 선언과 동시 null로 초기화 함.
ⓑ NodeJS.Timeout
Node.js 환경에서 setInterval 또는 setTimeout 같은 함수가 반환하는 타이머 객체의 타입
브라우저 환경에서는 number 이지만, Node.js 에서는 NodeJS.Timeout 타입이라고 함.


코멘트

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다