본문 바로가기
Script/JavaScript

[JavaScript] Chapter 17. 클래스

by song.ift 2022. 12. 16.

클래스 (Class)

  • 객체를 생성하기 위한 틀, 객체X
  • 클래스 안에 데이터가 없다
  • 메모리에 올라가지 않는다.
javascript
닫기
Class Info { ​​​​// 생성자 ​​​​constructor({name, age}) { ​​​​​​​​this.name = name; ​​​​​​​​this.age = age; ​​​​} ​​​​ ​​​​write() { ​​​​​​​​return this.name + this.age; ​​​​} } let info = new Info({name:"홍길원", age:31}); console.log(info.write());

 

Getter

  • 프로퍼티 값을 가져오기 위한 함수

Setter

  • 프로퍼티 값을 설정하기 위한 함수
javascript
닫기
get 함수명() { ​​​​return this._변수명; } set 함수명(value) { ​​​​this._변수명 = value; }

사용은 함수처럼 호출()해서 사용하는 것이 아닌, 변수처럼 사용한다

 

Prviate 프로퍼티

  • 외부 접근 불가능
  • Class 내부에서 사용, 변경 가능
  • 표현식 : 변수 앞에 # 붙임

Public 프로퍼티

  • 외부 접근 가능
  • Class 외부에서 사용, 변경 가능
  • 표현식 : 변수 앞에 # 안붙임

 

javascript
닫기
class Info { ​​​​publicValue = "50kg"; ​​​​#privateValue = "50kg"; }

 

인스턴스 (Instance)

  • 클래스나 프로토타입을 이용하여 만든 것
  • 프로퍼티와 메소드를 상속받음
  • 클래스로 만든 객체

 

인스턴스 (extends)

  • 부모가 자식에게 물려주는 것
    • 부모 class가 자식 class에게 물려주는 것
    • 자식 class는 부모 class 사용 가능
javascript
닫기
// 부모 클래스 class ParentClass { ​​​​sum() { ​​​​​​​​// 코드 ​​​​} ​​​​ ​​​​write() { ​​​​​​​​// 코드 ​​​​} } // 자식 클래스 class ChildClass extends ParentClass { ​​​​sum() { ​​​​​​​​super.sum(); ​​​​} ​​​​ ​​​​// 메소드 오버라이딩 ​​​​write() { ​​​​} } // 부모 Class lat parent = new ParentClass()

 

 

댓글