티스토리 뷰
반응형
인터페이스
인터페이스는 타입을 정의하는 강력한 방법으로 변수, 함수, 클래스의 타입을 정의할 수 있게 도와준다.
인터페이스는 변수, 함수, 클래스의 타입을 정의함으로써 일관성을 유지시켜주는데 크게 기여한다.
인터페이스가 어떻게 작동하는지 다음 예시를 통해 확인하자.
interface Items {
id: string
category_id: string
category_name: string
name: string
price: number
}
위 예시를 보면 Items라는 인터페이스 안에 여러 변수가 들어있다.
그리고 각각 타입이 지정되어 있는 것을 확인할 수 있다.
interface 형식
interface 이름 {
키: 타입
key : type
}
interface를 선언한 후 이름을 지정해준다.
그리고 그 안에 정의할 변수와 타입을 차례대로 작성하는 형식으로 구성되어 있다.
✔️ interface 변수
interface Tooo {
id: number
content: string
}
let tooo: Tooo;
tooo = { id: 1, content: 'tooo1' };
Tooo라는 인터페이스를 만들어주었고 그 안에 id와 content 변수에 대해 타입을 정의해주었다.
id의 타입은 number, content의 타입은 string이다.
그리고 변수 tooo의 타입을 Tooo 인터페이스로 정의해주고,
변수 tooo에 값을 타입을 고려하여 대입해주었다.
✔️ interface 함수
interface ToooFunc {
(num: number): number;
}
const toooFunc: ToooFunc = function (num: number) {
return num * num;
}
interface는 함수도 타입 정의가 가능하다.
위 예시는 ToooFunc 함수의 타입을 정의하기 위해 interface를 사용한 모습이다.
✔️ interface 클래스
interface Tooo {
id: number;
content: string;
}
class To implements Tooo {
constructor (
public id: number,
public content: string
) { }
}
const to = new To(1, 'tooo1');
interface는 클래스도 타입 정의가 가능하다.
위 예시는 To 클래스의 타입을 정의하기 위해 interface를 사용한 모습이다.
😁 interface 상속
interface Tooo {
id: number
content: string
}
interface Toooo extends Tooo {
to : number
}
const tooo: Toooo {
id: 1
content: 'Hi'
to : 123
}
인터페이스는 extends 키워드를 사용하여 인터페이스 또는 클래스를 상속받을 수 있다.
좋아요는 로그인하지 않아도 누를 수 있습니다!
728x90
반응형
'WEB > 타입스크립트' 카테고리의 다른 글
[타입스크립트] 타입 추론 vs 타입 어노테이션 (3) | 2022.07.18 |
---|---|
[타입스크립트] 시작하기 (Hello World!) (1) | 2022.02.11 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 풀이
- 쉽게배우는자바프로그래밍
- BFS
- 운영체제
- C++
- 파이썬
- CPP
- JS
- 정리
- 구현
- 정렬
- 해답
- 연습문제
- 백준
- 그리디
- 우종정
- 자바스크립트
- 쉽게배우는
- 정답
- py
- 알고리즘
- Python
- 문자열
- Web
- 쉽게 배우는 자바 프로그래밍
- OS
- 프로그래머스
- 자바
- 답
- java
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함