Java에서 객체 유형을 얻는 방법?

Java Eseo Gaegche Yuhyeong Eul Eodneun Bangbeob



객체는 고유한 상태와 동작을 갖는 물리적 엔티티이며 Java 클래스의 고유한 인스턴스 역할을 합니다. 그것. 개체가 소스에서 비롯된 경우 개체 유형을 검사하는 것이 유용한 것으로 간주됩니다. 또한 다른 개체를 포함하는 컬렉션으로 작업하거나 동일한 종류의 변수로 논리 연산을 실행해야 하는 경우 개체의 유형을 아는 것이 중요합니다.

이 기사는 Java에서 객체의 유형을 얻는 방법을 배우는 데 도움이 될 것입니다.

Java에서 객체 유형을 얻는 방법?

Java에서 미리 정의되거나 사용자 정의된 클래스 객체의 유형을 가져오기 위해 다음을 사용할 수 있습니다.







  • getClass() 방법
  • 대신에 운영자

지금부터 언급한 방법들을 하나하나 살펴보도록 하겠습니다!



방법 1: getClass() 메서드를 사용하여 미리 정의된 클래스 객체의 유형 가져오기

Java에는 String, Double, Integer 등과 같은 래퍼 클래스와 같은 미리 정의된 클래스가 있습니다. 때로는 미리 정의된 클래스를 사용하는 동안 객체 유형을 확인해야 합니다. 이를 위해 Java는 ' getClass() '에 속하는 '메소드' 물체 ' 수업.



통사론
'의 구문 getClass() ' 메소드는 다음과 같이 주어진다.





엑스. getClass ( )

여기서 ' getClass() '메소드는 지정된 '의 클래스를 반환합니다. 엑스 ' 물체.

예시
이 예제에서는 ' 엑스 ' 다음 값을 포함합니다.



엑스 = '안녕하십니까' ;

다음으로 '를 사용하여 명령문을 인쇄합니다. System.out.println() ' 방법:

체계 . 밖으로 . 인쇄 ( 'x가 속한?' ) ;

마지막으로 '객체'의 유형을 얻습니다. 엑스 '를 호출하여 getClass() ' 방법:

체계 . 밖으로 . 인쇄 ( 엑스. getClass ( ) ) ;

출력은 생성된 변수가 Java String 클래스에 속한다는 것을 보여줍니다.

'instanceof' 연산자를 사용하여 객체 유형을 가져오는 또 다른 방법을 살펴보겠습니다.

방법 2: 'instanceof' 연산자를 사용하여 미리 정의된 클래스 개체의 유형 가져오기

' 대신에 ” 연산자를 사용하여 Java 프로그램에서 개체 유형을 확인합니다. 이 연산자는 개체가 특정 클래스의 인스턴스인지 여부를 나타내는 부울 값을 반환합니다.

통사론
'의 구문 대신에 ' 다음과 같다:

엑스 대신에 정수

여기, ' 엑스 '는 객체이고 ' 정수 '는 사전 정의된 Java 래퍼 클래스입니다. ' 대신에 '연산자는 객체가 언급된 클래스에 속하는지 여부를 확인하고 부울 값을 반환합니다.

예시
이 예에서는 ' 엑스 '가 있는 Integer 클래스의 ' 5 '를 값으로:

정수 엑스 = 5 ;

다음으로 '를 사용하여 명령문을 인쇄합니다. System.out.println() ' 방법:

체계 . 밖으로 . 인쇄 ( 'x는 Integer 클래스의 인스턴스입니까?' ) ;

이제 객체가 Integer 클래스의 인스턴스인지 여부를 확인합니다.

체계 . 밖으로 . 인쇄 ( 엑스 대신에 정수 ) ;

출력은 ' 진실 '를 대상으로 ' 엑스 '는 Integer 클래스의 인스턴스입니다.

이쯤 되면 사용자 정의 클래스 객체의 타입을 어떻게 구하는지 궁금할 것이다. 아래에 제공된 섹션은 이와 관련하여 도움이 될 것입니다.

방법 3: getClass() 메서드를 사용하여 사용자 정의 클래스 개체의 유형 가져오기

'의 도움으로 사용자 정의 클래스 객체의 유형을 얻을 수도 있습니다 getClass() ' 방법. 이러한 시나리오에서 ''를 사용하여 객체를 클래스 이름과 비교할 것입니다. == ' 비교 연산자.

통사론
지정된 목적을 위해 ' getClass() ' 메소드는 다음과 같이 주어진다.

myclassObj. getClass ( ) == 내 수업. 수업

여기서 ' getClass() ' 메서드는 ' myclassObj '의 대상은 ' 내 수업 '를 입력한 다음 비교 연산자 '를 사용하여 이름과 비교합니다. == '.

예시
이 예에서는 '라는 세 개의 클래스가 있습니다. 내 수업 ', ' 마이뉴클래스 ', 그리고 ' 예시 ', 여기서 MyClass는 MynewClass의 부모 클래스 역할을 합니다.

수업 내 수업 { }

' 마이뉴클래스 '는 '에서 확장된 자식 클래스입니다. 내 수업 ':

수업 마이뉴클래스 연장하다 내 수업 { }

클래스의 main() 메소드에서 ' 예시 ', 우리는 부모 클래스의 객체를 선언하고 인스턴스화할 것입니다 ' 내 수업 '. 그런 다음 생성된 객체가 어느 클래스에 속하는지 확인합니다. 부모 또는 자녀? 이를 위해 ' getClass() ” 메서드를 생성된 객체와 비교하고 결과 값을 if-else-if 조건을 사용하여 부모 및 자식 클래스 이름과 비교합니다.

공공의 수업 예시 {
공공의 공전 무효의 기본 ( [ ] 인수 ) {
마이클래스 = 새로운 내 수업 ( ) ;
만약에 ( myclassObj. getClass ( ) == 내 수업. 수업 ) {
체계 . 밖으로 . 인쇄 ( ''myclassObj' 개체는 'MyClass' 유형입니다.' ) ;
} 또 다른 만약에 ( myclassObj. getClass ( ) == 마이뉴클래스. 수업 ) {
체계 . 밖으로 . 인쇄 ( ''myclassObj' 개체는 'MynewClass' 유형입니다.' ) ;
}
}
}

출력은 개체 ' myclassObj '라는 이름의 상위 클래스에 속합니다. 내 수업 ':

이제 다음 섹션으로 향하십시오!

방법 4: 'instanceof' 연산자를 사용하여 사용자 정의 클래스 개체의 유형 가져오기

미리 정의된 클래스와 유사하게 사용자 정의 클래스의 경우 ' 대신에 ' 운영자.

통사론
구문은 다음과 같습니다.

myclassObj 대신에 내 수업

여기서 ' 대신에 ' 연산자는 ' myclassObj '는 '의 사례입니다. 내 수업 '하거나.

예시
이제 이전에 언급한 예제에서 생성한 것과 동일한 클래스를 사용할 것입니다. 유일한 차이점은 ' 대신에 ” 연산자를 사용하여 생성된 개체 인스턴스가 부모 또는 자식 클래스에 속하는지 확인합니다.

공공의 수업 예시 {
공공의 공전 무효의 기본 ( [ ] 인수 ) {
마이클래스 = 새로운 내 수업 ( ) ;
만약에 ( myclassObj 대신에 내 수업 ) {
체계 . 밖으로 . 인쇄 ( ''myclassObj' 개체는 'MyClass'의 인스턴스입니다.' ) ;
} 또 다른 만약에 ( myclassObj 대신에 마이뉴클래스 ) {
체계 . 밖으로 . 인쇄 ( ''myclassObj' 개체는 'MynewClass'의 인스턴스입니다.' ) ;
}
}
}

주어진 출력은 ' 대신에 ' 연산자는 개체 유형을 ' 내 수업 ':

Java에서 객체 유형을 가져오는 것과 관련된 모든 메소드를 컴파일했습니다.

결론

Java에서 객체 유형을 얻으려면 ' getClass() ' 방법 또는 ' 대신에 ' 운영자. 이러한 메서드는 미리 정의된 클래스와 사용자 정의 클래스 모두에 대한 개체 유형을 확인하는 데 사용할 수 있습니다. getClass() 메서드는 클래스 이름을 반환하고 'instanceof' 연산자는 부울 값을 반환합니다. 여기서 ' 진실 '는 개체가 지정된 클래스에 속함을 나타냅니다. 그렇지 않으면 ' 거짓 '. 이 기사에서는 Java에서 객체 유형을 가져오는 모든 방법을 제공했습니다.