TypeScript 시작하기 (15)

funfungun·2025년 1월 15일

TypeScript 시작하기

목록 보기
15/21
post-thumbnail

저번 시간에는 함수에 사용하는 never 타입에 대해 알아보았습니다. 이번 시간에는 타입스크립트에서의 public, private 키워드에 대해 알아보겠습니다.


  1. 클래스의 properties 에도 타입 지정이 가능합니다. 클래스 밖에서 properties 에 접근하는 것을 막으려면 private 키워드를 사용하면 되고, public 은 명시되어 있지 않으면 생략되어 있다고 생각하면 됩니다.

    class User {
      name: string;
      private familyName: string;
      constructor(a) {
        this.name = a + this.familyName;
      }
    }
    
    let user1 = new User("park");
    console.log(user1.familyName); //error 'familyName' 속성은 private이며 'User' 클래스 내에서만 액세스할 수 있습니다.ts(2341)

  1. private 으로 이루어진 properties 를 클래스 밖에서 수정이 가능하게 하려면, 클래스 안에서 함수를 만들어주면 됩니다.

    class User {
      name: string;
      private familyName: string;
      constructor(a) {
        this.name = a + this.familyName;
      }
    
      public changeName() {
        this.familyName = "lee";
      }
    }
    
    let user1 = new User("park");
    user1.changeName();
    console.log(user1);

  1. constructor 에서 public 키워드를 쓰면 this 키워드의 생략이 가능합니다. 즉, 멤버 변수의 선언과 초기화가 동시에 이루어집니다. 다만, 여기서 public 키워드마저 생략해버리면 멤버 변수가 자동으로 선언되지 않기 때문에 public 은 생략하지 않습니다.
    class Person {
      constructor(public name: string) {}
    }

지금까지 짧게 public과 private 키워드에 대해 알아보았습니다. 다음 시간에는 protected와 static 키워드에 대해 알아보겠습니다.

(본 포스팅은 코딩애플(Coding Apple)의 '빠르게 마스터하는 타입스크립트' 강의 내용을 바탕으로 학습하며 정리한 글입니다.)

profile
Commercial Art

0개의 댓글