TypeScript : 클래스 (public, private, protected)

728x90
반응형

1.객체 지향 프로그래밍을 구성하는데 핵심 = 클래스

2. 속성 : 객체의 성질 결정 (팥붕 /슈붕)

3. 메서드 : 객체의 성질을 변화 + 객체에서 제공하는 기능들을 사용하는 창구

- 붕어빵 주인 = 팥붕 -> 슈붕으로 변경 

- 붕어빵 고객 = 팥붕의 가격이 3개의 1천원, 슈붕 2개의 1천원임을 알 수 있음

4. 객체 = 클래스의 인스턴스

 

(1) 클래스 정의

- class 키워드 사용

- new 키워드 : 객체 생성 가능

- constructor 키워드 : 생성자 ( 클래스 인스턴스 생성 & 초기화) 

=> 인스턴스 생성 시 자동 호출 + 오직 1개만 존재 + 초기값을 지정하는 코드임

=> DB 연결을 미리 가능

class Person {
  name: string;
  age: number;

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

  sayHello() {
    console.log(`안녕하세요! 제 이름은 ${this.name}이고, 나이는 ${this.age}살입니다.`);
  }
}

const person = new Person('Spartan', 30);
person.sayHello();

 

(2) 클래스 접근 제한자

1) public

- 기본적 접근제한 + 외부에서 접근 가능

 

2) private

- 클래스 내부에서만 접근 가능

- 클래스 속성은 대부분 private 사용

 

3) protected

- 클래스 내부 + 해당 클래스를 상속 받은 자식클래스에서만 접근

 

 

 

 

끝.

반응형