자식인스턴스 as 부모클래스
// upcasting 안전한 캐스팅. 자식이 추상화됨let myButton: UIButton = UIButton()
let myControl = myButton as UIControl
// 자식 인스턴스 as 부모 클래스다운캐스팅
as!
: 성공 확신이 있을 때 강제 변환 (dorced conversion) → 변환이 안되면 crashas?
: 성공 확신이 없을 때 안전하게 변환 → 변환이 안되면 nil 리턴하므로 옵셔널 타입으로 반환한다.부모인스턴스 as! 자식클래스
→ 많이 쓰지는 않음
부모인스턴스 as? 자식클래스
is
키워드 이용해 값의 타입 검사를 할 수 있다 (type check)인스턴스 is 클래스
→ 인스턴스가 해당 클래스인가?if myobject is Myclass{
// myobject는 MyClass의 인스턴스이다
}
class A {}
var a : A = A()
if a is A{
print("Yes")
}
학습자료 : Smile Han 유튜브 채널