타입스크립트의 interface와 implements에 대해 알아보자 (+ extends 맛보기)



Interface / Implements


interface

  • 데이터 타입 정의 / 설계

implements

  • 사용 / 구현
// interface와 Implements
// 정의 - 사용 / 설계 - 구현 관계

interface Person {
    name: string
    run(): void
}

class Jang implements Person {
    constructor (public name: string) {}

    run() {
        console.log(this.name)
    }
}



interface - extends (확장)

interface Animal {
    name: string
    run(): string
}

interface Person extends Animal {
    sayName(): string
}
// 이런식으로 interface를 작성하면 Person은 Animal의 속성들을 모두 가지면서,
// sayName()도 가지게 된다. (+알파느낌)

const jang: Person = {
    name: 'Na',
    run() {
        return 'string'
    },
    sayName() {
        return 'string'
    }
}
profile
⛅🛩️ 먼 길을 돌아서 온 프론트엔드 개발자 ✈️⛅

0개의 댓글