Java instanceof 사용법 상세 및 실례 코드

2596 단어 Javainstanceof
Java instanceof 사용 설명
Java의 instanceof 연산자는 실행할 때 대상이 특정 클래스인지 아닌지를 가리키는 실례입니다.instanceof는 이 대상이 이 특정한 클래스나 하위 클래스의 실례인지 볼 값을 되돌려줍니다.
사용법:

result = object instanceof class
매개변수:
Result: 부울 유형입니다.
Object: 필수 옵션입니다.임의의 대상 표현식.
Class: 필수 옵션입니다.정의된 모든 객체 클래스
설명:
만약object가class의 실례라면, instanceof 연산자는true를 되돌려줍니다.만약object가 지정한 클래스의 실례가 아니거나object가null이면false를 되돌려줍니다.
예는 다음과 같습니다.

package com.instanceoftest; 
  
 interface A{} 
 class B implements A{ 
  
 } 
 class C extends B { 
  
 } 
  
 class instanceoftest { 
 public static void main(String[] args){ 
   A a=null; 
   B b=null; 
   boolean res;  
    
   System.out.println("instanceoftest test case 1: ------------------"); 
    res = a instanceof A;  
    System.out.println("a instanceof A: " + res); 
     
    res = b instanceof B; 
    System.out.println("b instanceof B: " + res); 
     
   System.out.println("/ninstanceoftest test case 2: ------------------");   
   a=new B(); 
   b=new B(); 
    
   res = a instanceof A;  
   System.out.println("a instanceof A: " + res); 
    
   res = a instanceof B; 
   System.out.println("a instanceof B: " + res); 
   res = b instanceof A; 
   System.out.println("b instanceof A: " + res); 
    
   res = b instanceof B; 
   System.out.println("b instanceof B: " + res); 
   
   System.out.println("/ninstanceoftest test case 3: ------------------"); 
   B b2=(C)new C(); 
    
   res = b2 instanceof A; 
   System.out.println("b2 instanceof A: " + res); 
    
   res = b2 instanceof B; 
   System.out.println("b2 instanceof B: " + res); 
    
   res = b2 instanceof C; 
   System.out.println("b2 instanceof C: " + res); 
 } 
} 
 
/* 
result: 
 
instanceoftest test case 1: ------------------ 
a instanceof A: false 
b instanceof B: false 
instanceoftest test case 2: ------------------ 
a instanceof A: true 
a instanceof B: true 
b instanceof A: true 
b instanceof B: true 
instanceoftest test case 3: ------------------ 
b2 instanceof A: true 
b2 instanceof B: true 
b2 instanceof C: true 
 
*/ 
읽어주셔서 감사합니다. 여러분에게 도움이 되었으면 좋겠습니다. 본 사이트에 대한 지지에 감사드립니다!

좋은 웹페이지 즐겨찾기