TypeScript 시작하기 (15) - public, private 쓰는거 보니까 타입스크립트 귀여운편

funfungun·2025년 1월 15일
0

TypeScript 시작하기

목록 보기
15/18
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 키워드에 대해 알아보겠습니다.

profile
Commercial Art

0개의 댓글