[TypeScript] 인터페이스와 클래스

kjy0124·2026년 3월 8일
post-thumbnail

🎯 인터페이스와 클래스

interface CharacterInterface {
  name: string;
  moveSpeed: number;
  move(): void;
}

class Character {
  
}
  • 먼저 위 코드에서 CharacterInterface 인터페이스가 정의하는 타입의 객체를 Character 클래스가 생성하도록 정의 가능
  • 이 떄 사용하는 키워드가 이번 회차에 배울 implements 이다.

✅ implements

implements는 구현하다 라는 뜻

class Character implements CharacterInterface{}

즉, 위 코드에서 의미하는 것은 "Character 클래스는 CharacterInterface를 구현한다" 라는 뜻으로 해석할 수 있다.

interface CharacterInterface {
  name: string;
  moveSpeed: number;
  move(): void;
}

class Character implements CharacterInterface {
  name: string;
  moveSpeed: number;

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

  move= () => {
    console.log(`${this.moveSpeed}로 이동`);
  }
}
  • 위 방식으로 작성
  • 이 때 interface는 오로지 public으로만 작동하기 때문에 privateprotected 방식은 지원하지 않음
  • 그래서 private를 달아주게 된다면 위 사진과 같은 에러를 발생시킨다.
  • 만약 private가 필요하다면 constructor에 따로 정의해야 함

출처

한 입 크기로 잘라먹는 타입스크립트
https://www.inflearn.com/course/한입-크기-타입스크립트/dashboard

profile
개발 공부...

0개의 댓글