class3-access modifiers

홍인열·2021년 8월 12일
0

access modifiers

  • 접근 제어자에는 public, private, protected가 있다.
  • 미설정시 public 이다.
  • 클래스 내부의 모든 곳에 (생성자, 프로퍼티, 메서드) 설정 가능하다.
  • private으로 설정하면 클래스 외부에서 접근할 수 없다.
  • 자바스크립트에서 private 지원하지 않아 오랜동안 프로퍼티나 메서드 이름앞에 '_'를 붙여서 표현했다.
// access modifieres
class Person3 {
  name: string;
  age: number;
  constructor(name: string, age: number) {
    this.name = name;
    this.age = age;
  }
}

const p32 = new Person3("apple", 31);

console.log(p32);
// => Person3 { name: 'apple', age: 31 }

---
// private 적용시

  class Person3 {
  name: string;
  age: number;
  private constructor(name: string, age: number) {
    this.name = name;
    this.age = age;
  }
}

const p32 = new Person3("apple", 31);
// error, 'Person3' 클래스의 생성자는 private이며 클래스 선언 내에서만 액세스할 수 있습니다.ts(2673)
profile
함께 일하고싶은 개발자

0개의 댓글