//never type
// 조건1. 함수가 리턴하면 안된다.
// 조건2. 엔드포인트가 없어야 한다. (끝나지 않아야한다.)
// 어따쓰냐면 : 안쓴다. :void 쓰면 된다.
// 알아야되는 이유는 ? 간혹 등장하기 때문이다. narrowing 에서 never가 등장하면 있을 수 없다는 뜻이다.
const 네버타입 = ():never=>{
throw new Error('에러를 내는 방법이 있고,')
//while(true){} 이것도 방법이고,
}
//OOP 키워드의 사용
//constructor 사용 이유는 : 파라미터 입력 가능.
class User{
private familyName : string = '이'
constructor(private name:string) { // 간결하게 축약 가능
this.name = this.familyName + name
}
public 성씨수정(a:string):void{ //클래스 내부에서는 private에 접근 가능
this.familyName = a;
}
}
let 유저1 = new User('준우');
let 유저2 = new User('혜자');
// 유저1.name = '김정은'; //private name 이므로 에러를 띄워준다.
// 유저1.familyName = '박' //private familyName 이므로 에러를 띄워준다.
console.log(유저1)
유저1.성씨수정('김'); //성씨수정은 public 이므로 사용 가능
console.log(유저1)
댓글