Instnaceof
2019. 10. 8. 14:20ㆍ모바일/Android_Java
class Car
class Sonata extends Car
test(Sonata)
test(Car c)
참조변수가 참조하고 있는 인스턴스의 실제 타입을 알아보기 위해 instanceof 연산자를 사용합니다. 보통 instanceof의 왼쪽에는 참조변수(부모클라스)를 오른쪽에는 타입(클래스명)(자식클라스)이 피연산자로 위치합니다. 연산의 결과로 boolean값인 true, false 중의 하나를 반환 합니다.
-> instanceof를 이용한 연산결과로 true를 얻었다는 것은 참조변수가 검사한 타입으로 형변환이 가능하다는 것을 뜻합니다.
-> 함수를 구현할 때 어떤 클래스가 들어올지 모르기때문에 부모클래스타입으로 지정해놓고,
if (c instnacof Sonata)
처럼 소나타로 형변환이 가능하다면 (자식클래스의 메소드들을 전부 사용하기 위해서인듯?)
Sonata s = (Sonata)c
로 형변환한다!
'모바일 > Android_Java' 카테고리의 다른 글
Realm (0) | 2019.10.14 |
---|---|
DataBinding (0) | 2019.10.14 |
안드로이드에서 자주쓰는 함수 (0) | 2019.10.08 |
RecyclerView (0) | 2019.10.08 |
MVVM 패턴,Ovserver패턴 (0) | 2019.10.08 |