서브타입과 슈퍼타입


서브타입과 슈퍼타입

서브타입과 슈퍼타입 같거나 서브 타입인 경우 할당이 가능하다. ⇒ 공변 함수의 매개변수 타입만 같거나 슈퍼타입인 경우 할당이 가능하다. ⇒ 반병 // sub1 타입은 sup1 타입의 서브 타입이다. // sup1 타입은 sub1 타입의 슈퍼 타입이다. let sub1: 1 = 1; let sup1: number = sub1; sub1 = sup1 // 에러 // sub2 타입은 sup2 타입의 서브 타입이다. // sup2 타입은 sub2 타입의 슈퍼 타입이다. let sub2: number[] = [1]; let sup2: object = sub2; sub2 = sup2 // 에러 // sub3 타입은 sup3 타입의 서브 타입이다. // sup3 타입은 sub3 타입의 슈퍼 타입이다. let sub3: [number, number] = [1,2]; let sup3: number[] = sub3; sub3 = sup3 // 에러 // sub5 타입은 sup5 타입의 서브 타입이다....


#TypeScript #서브타입 #슈퍼타입 #타입스크립트

원문링크 : 서브타입과 슈퍼타입