• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

A instance of B의 작동원리가 궁금합니다!

22.12.15 10:15 작성 조회수 162

0

요기가 질문란이 맞겠죠?

 

우선 질문은 마그대로 A instance of B의 작동원리에 대해 설명받고 싶고

그전에 저의 추측도 한번 말씀드리고싶습니다!

Object obj = new String();
System.out.println(obj instanceof String);

위와 같은 상황에서라고 가정한다면

instanceof라는 메서드?api?를 사용할때

1) compile시점에 obj는 초기화는 되지 않았지만 String이라는 클래스의 기억공간을 가르킬 주소를

갖고있도록 해석된다

2) obj instanceof String을 실행하는 시점에 String Class와 String Class는 같은가?라고 해석해서

true의 값을 반환한다

일까요? 아니면

1) 컴파일 시점에 obj는 Object이다

2)obj instanceof String 을 하는순간 ?? .. 잘모르겠습니다!

답변 1

답변을 작성해보세요.

0

Object obj = new String();

System.out.println(obj instanceof String);

obj가 메모리에 만들어질때 Object타입과 하위타입 String이 연결되서 만들어집니다(상속체이닝)

obj instanceof String 이부분의 해석은 obj가 가리리는 객체중 String타입이 있는지를 체크해보는 연산자(instanceof)라고 보시면됩니다. obj가 가리키는 객체가 String도 만들어져 있기때문에 true가 됩니다.

이해가 되셨을까요?