개발/Web

[JS] 자바스크립트에서의 class - get, set, 상속

유훈 | Yuhun 2021. 12. 31. 01:02
반응형

CLASS

자바 스크립트에서 class라는 object를 사용할 수 있는데 유효성 검사를 위해 get과 set을 사용하게 된다.

이 부분은 c++의 class와 유사하다고 생각된다.

class User{
  constructor(P1,P2,P3){ // 생성자를 이용해 class에 값 할당이 가능하다.
    

  }
 // 예를 들어 c의 유효성 검사를 위해 get, set 키워드를 사용한다.
  get c(){
    return this._c; // 언더바를 사용하는 이유는 계속해서 자신을 부르기 때문이다.
  }

  set c(value){
    if(value < 0 ){ // value가 0보다 작으면 에러 메세지를 출력하고 싶음.
      throw Error(“0보다 큰 값이 아닙니다.”)
    }
    this._c = value;
  }
}

상속 extends

class를 사용한다면 상속은 아주 중요한 개념이다

class A를 상속해 B를 만드는 것 + 오버라이딩

다음과 같이 상속이 가능하고 클래스의 다형성을 이용해

함수를 오버라이딩 해 재사용 가능하다.

class A { // 클래스 A 선언
  constructor(P1, P2, P3){
    this.a = P1;
    this.b = P2;
    this.c = P3; 
  }
  
  printHello(){
    console.log(“hello”); 
  }
}

class B extends A{ // 클래스 상속
  printHello() { // 함수 오버라이딩 => 다형성
    console.log(“Bye”);  
  }
}

 

반응형