>  기사  >  Java  >  이런 방식으로, instanceof 키워드를 구현할 수 있습니다.

이런 방식으로, instanceof 키워드를 구현할 수 있습니다.

巴扎黑
巴扎黑원래의
2017-07-18 18:28:041283검색
Java 의사코드를 사용하여 Java 언어 사양에 설명된 런타임 의미를 표현하면 다음과 같습니다.
// obj instanceof Tboolean result;if (obj == null) {
  result = false;
} else {  try {
      T temp = (T) obj; // checkcast  result = true;
  } catch (ClassCastException e) {
      result = false;
  }
}

중국어로는 다음을 의미합니다. obj 인스턴스of T 표현식이 있으면 obj is not null 그리고 (T) obj가 ClassCastException을 발생시키지 않으면 표현식 값은 true이고, 그렇지 않으면 값은 false입니다.
JVM이나 클래스 객체에 대한 언급이 전혀 없으며 코드 관점에서 T 유형을 얻는 방법을 보여주지 않습니다. 또한 instanceof 연산자에는 런타임 의미 외에도 몇 가지 컴파일 시간 제한이 있습니다. 자세한 내용은 사양을 참조하세요.


instanceof는 Java의 이항 연산자로 ==, >, <와 동일한 유형입니다. 문자로 구성되어 있기 때문에 자바에서는 예약어이기도 합니다. 그 기능은 왼쪽 개체가 오른쪽 클래스의 인스턴스인지 테스트하고 부울 유형 데이터를 반환하는 것입니다. . instanceof는 객체가 이 특정 클래스의 인스턴스인지 아니면 하위 클래스인지를 나타내는 부울 값을 반환합니다.

사용법:
result = 클래스의 개체 인스턴스
매개변수:
결과: 부울 유형.

객체: 필수입니다. 모든 객체 표현.
수업: 필수입니다. 정의된 객체 클래스.
설명:
객체가 클래스의 인스턴스인 경우
, instanceof 연산자는 true를 반환합니다. 객체가 지정된 클래스의 인스턴스가 아니거나 객체가 null인 경우 false를 반환합니다.

위 내용은 이런 방식으로, instanceof 키워드를 구현할 수 있습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.