산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> java

자바 instanceof 연산자

자바 instanceof 연산자

이 튜토리얼에서는 예제를 통해 Java instanceof 연산자에 대해 자세히 알아볼 것입니다.

instanceof 자바에서 연산자는 객체가 특정 클래스의 인스턴스인지 여부를 확인하는 데 사용됩니다.

구문은

objectName instanceOf className;

여기서 objectName인 경우 className의 인스턴스입니다. , 연산자는 true를 반환합니다. . 그렇지 않으면 false을 반환합니다. .

<시간>

예:자바 instanceof

class Main {

  public static void main(String[] args) {

    // create a variable of string type
    String name = "Programiz";
    
    // checks if name is instance of String
    boolean result1 = name instanceof String;
    System.out.println("name is an instance of String: " + result1);

    // create an object of Main
    Main obj = new Main();

    // checks if obj is an instance of Main
    boolean result2 = obj instanceof Main;
    System.out.println("obj is an instance of Main: " + result2);
  }
}

출력

name is an instance of String: true
obj is an instance of Main: true

위의 예에서 name 변수를 생성했습니다. String의 유형 및 개체 obj 메인 수업.

여기서는 instanceof을 사용했습니다. name 여부를 확인하는 연산자 및 obj String의 인스턴스입니다. 및 메인 각각 클래스. 그리고 연산자는 true을 반환합니다. 두 경우 모두.

참고 :자바에서는 String 원시 데이터 유형이 아닌 클래스입니다. 자세한 내용은 Java String을 참조하십시오.

<시간>

상속 중 Java instanceof

instanceof을 사용할 수 있습니다. 하위 클래스의 객체가 상위 클래스의 인스턴스이기도 한지 확인하는 연산자입니다. 예를 들어,

// Java Program to check if an object of the subclass
// is also an instance of the superclass

// superclass
class Animal {
}

// subclass
class Dog extends Animal {
}

class Main {
  public static void main(String[] args) {

    // create an object of the subclass
    Dog d1 = new Dog();

    // checks if d1 is an instance of the subclass
    System.out.println(d1 instanceof Dog);        // prints true

    // checks if d1 is an instance of the superclass
    System.out.println(d1 instanceof Animal);     // prints true
  }
}

위의 예에서 Dog 하위 클래스를 만들었습니다. 슈퍼클래스 Animal에서 상속 . d1 개체를 만들었습니다. 수업.

print 문 내에서 다음 표현식을 확인하십시오.

d1 instanceof Animal

여기에서는 instanceof을 사용하고 있습니다. d1 여부를 확인하는 연산자 슈퍼클래스 Animal의 인스턴스이기도 합니다. .

<시간>

인터페이스의 Java instanceof

instanceof operator는 또한 클래스의 객체가 클래스에 의해 구현된 인터페이스의 인스턴스인지 여부를 확인하는 데 사용됩니다. 예를 들어,

// Java program to check if an object of a class is also
//  an instance of the interface implemented by the class

interface Animal {
}

class Dog implements Animal {
}

class Main {
  public static void main(String[] args) {

    // create an object of the Dog class
    Dog d1 = new Dog();

    // checks if the object of Dog
    // is also an instance of Animal
    System.out.println(d1 instanceof Animal);  // returns true
  }
}

위의 예에서 Dog 클래스는 동물을 구현합니다. 상호 작용. print 문 내에서 다음 표현식을 확인하십시오.

d1 instanceof Animal

여기서 d1 Dog의 인스턴스입니다. 수업. instanceof 연산자는 d1인지 확인합니다. Animal 인터페이스의 인스턴스이기도 합니다. .

참고 :Java에서 모든 클래스는 Object에서 상속됩니다. 수업. 따라서 모든 클래스의 인스턴스는 Object의 인스턴스이기도 합니다. 수업.

이전 예에서 확인하면

d1 instanceof Object

결과는 true이 됩니다. .


java

  1. 자바 최종 키워드
  2. 자바 상속
  3. 자바 중첩 정적 클래스
  4. 자바 익명 클래스
  5. 자바 싱글톤 클래스
  6. 자바 리플렉션
  7. 자바 ObjectOutputStream 클래스
  8. 자바 제네릭
  9. 자바 파일 클래스
  10. Java 9 - 내부 클래스 다이아몬드 연산자