Jak uzyskać rodzaj obiektu w Javie?

Jak uzyskać rodzaj obiektu w Javie?
Obiekt jest jednostką fizyczną, która ma swój własny stan i zachowanie, i działa jako unikalny przykład klasy Java. To. Gdy obiekt pochodzi ze źródła, jest uważane za przydatne do zbadania typu obiektu. Ponadto znajomość rodzaju obiektu jest kluczowe podczas pracy z kolekcją zawierającą różne obiekty lub gdy jest ono wymagane do wykonania operacji logicznej z tym samym rodzajem zmiennych.

Ten artykuł pomoże Ci poznać metodę uzyskania rodzaju obiektu w Javie.

Jak uzyskać rodzaj obiektu w Javie?

Aby uzyskać rodzaj predefiniowanego lub zdefiniowanego przez użytkownika obiekt klasy w Javie, możesz użyć:

  • getClass () metoda
  • wystąpienie operator

Teraz sprawdzimy każdą z wymienionych metod jeden po drugim!

Metoda 1: Otrzymuj rodzaj wstępnie zdefiniowanego obiektu klasy za pomocą metody getClass ()

W Javie mamy predefiniowane zajęcia, takie jak klasy opakowania, takie jak ciąg, podwójny, liczba całkowita i wiele innych. Czasami musimy zweryfikować typ obiektu podczas korzystania z predefiniowanych klas. W tym celu Java oferuje „getClass ()„Metoda należąca do„Obiekt" klasa.

Składnia
Składnia „getClass ()„Metoda jest podana w następujący sposób:

X.getClass ()

Tutaj "getClass ()„Metoda zwróci klasę określonego„X" obiekt.

Przykład
W tym przykładzie utworzymy obiekt typu ciągów o nazwie „X„Zawierający następującą wartość:

String x = "hello";

Następnie wydrukujemy instrukcję za pomocą „System.na zewnątrz.println ()" metoda:

System.na zewnątrz.println ("x należy do? ");

Na koniec otrzymamy rodzaj obiektu „X„Wzywając„ do „getClass ()" metoda:

System.na zewnątrz.Drukuj (x.getClass ());

Wyjście pokazuje, że utworzona zmienna należy do klasy ciągów Java:

Zobaczmy inną metodę, aby uzyskać typ obiektu za pomocą operatora „Instanceof”.

Metoda 2: Uzyskaj rodzaj predefiniowanego obiektu klasy za pomocą operatora „Instanceof”

Możesz także skorzystać z „wystąpienie„Operator, aby sprawdzić typ obiektu w programie Java. Ten operator zwraca wartość logiczną, która wskazuje, czy obiekt jest instancją konkretnej klasy, czy nie.

Składnia
Składnia „wystąpienie" następująco:

X instancja liczby całkowitej

Tutaj, "X”To obiekt i„Liczba całkowita”To predefiniowana klasa opakowań Java. „„wystąpienie„Operator sprawdza, czy obiekt należy do wspomnianej klasy, czy nie, i zwraca wartość logiczną.

Przykład
W tym przykładzie mamy obiekt „X„Klasy liczb całkowitych„ mającą „5”Jako jego wartość:

Liczba całkowita x = 5;

Następnie wydrukujemy instrukcję za pomocą „System.na zewnątrz.println ()" metoda:

System.na zewnątrz.Drukuj („X to instancja klasy liczb całkowitych? ");

Teraz sprawdzimy, czy obiekt jest instancją klasy całkowitej, czy nie:

System.na zewnątrz.print (x instanceof liczba całkowita);

Wyświetlane dane wyjściowe „PRAWDA”Jako obiekt„X”Jest instancją klasy całkowitej:

W tym momencie możesz zastanawiać się, jak uzyskać rodzaj obiektu klasy zdefiniowanej przez użytkownika. Poniższa sekcja pomoże ci w tym względzie.

Metoda 3: Pobierz typ obiektu klasy zdefiniowanej przez użytkownika za pomocą metody getClass ()

Możesz także uzyskać rodzaj obiektu klasy zdefiniowanej przez użytkownika za pomocą „getClass ()" metoda. W takim scenariuszu porównamy obiekt z nazwą klasy za pomocą „==”Operator porównawczy.

Składnia
W określonym celu składnia „getClass ()„Metoda jest podana jako:

myClassobj.getClass () == myClass.klasa

Tutaj "getClass ()„Metoda jest nazywana„myClassobj„Obiekt„Moja klasa”, A następnie w porównaniu z nazwą za pomocą operatora porównawczego„==".

Przykład
W tym przykładzie mamy trzy klasy o nazwie „Moja klasa”,„MyNewclass", I "Przykład”, Gdzie MyClass działa jako klasa rodziców MyNewclass:

klasa myClass

„„MyNewclass”To klasa dzieci, ponieważ jest rozszerzona z„Moja klasa”:

klasa MyNewClass rozszerza MyClass

W metodzie Main () klasy „Przykład”, Zadeklarujemy i utworzymy obiekt klasy nadrzędnej„Moja klasa". Następnie sprawdź, czy utworzony obiekt należy do której klasy; rodzic lub dziecko? Aby to zrobić, nazwiemy „getClass ()„Metoda z utworzonym obiektem i porównaj wynikową wartość z nazwami klas nadrzędnych i dzieci przy użyciu warunków IF-ELSE-IF:

Przykład klasy publicznej
public static void main (string [] args)
MyClass myClassobj = new myClass ();
if (myClassobj.getClass () == myClass.klasa)
System.na zewnątrz.println („Object„ myClassobj ”jest rodzajem„ myClass ”);
else if (myClassobj.getClass () == MyNewClass.klasa)
System.na zewnątrz.println („Object„ myClassobj ”jest rodzajem„ mynewclass ”);


Wyjście wskazuje, że obiekt „myClassobj„Należy do klasy nadrzędnej o nazwie„Moja klasa”:

Teraz skieruj się w kierunku następnej sekcji!

Metoda 4: Pobierz typ obiektu klasy zdefiniowanej przez użytkownika za pomocą operatora „Instanceof”

Podobnie jak predefiniowane klasy, dla klas zdefiniowanych przez użytkownika, możesz również uzyskać rodzaj obiektu za pomocą „wystąpienie„Operator.

Składnia
Składnia podano poniżej:

MyClassobj Instance of myClass

Tutaj "wystąpienie„Operator sprawdzi, czy„myClassobj”Jest przykładem„Moja klasa" albo nie.

Przykład
Będziemy teraz wykorzystywać te same klasy, które stworzyliśmy we wcześniej wspomnianym przykładzie. Jedyną różnicą jest to, że użyjemy „wystąpienie„Operator w sprawie sprawdzenia, czy utworzona instancja obiektu należy do klasy nadrzędnej lub dzieci:

Przykład klasy publicznej
public static void main (string [] args)
MyClass myClassobj = new myClass ();
if (myclassobj instance of myClass)
System.na zewnątrz.println („Object„ myClassobj ”jest instancją„ myClass ”);
else if (myClassObj instanceof mynewClass)
System.na zewnątrz.println („Object„ MyClassobj ”jest instancją„ MyNewClass ”);


Dane wyjście pokazuje, że „wystąpienie„Operator zatwierdził typ obiektu jako„Moja klasa”:

Zebraliśmy wszystkie metody związane z uzyskaniem typu obiektu w Javie.

Wniosek

Aby uzyskać rodzaj obiektu w Javie, możesz użyć „getClass ()”Metoda lub„wystąpienie„Operator. Te metody można użyć do sprawdzania typów obiektów zarówno dla klas predefiniowanych, jak i zdefiniowanych przez użytkownika. Metoda getClass () zwraca nazwę klasy, podczas gdy operator „instanceof” zwraca wartość logiczną, gdzie „PRAWDA”Wskazuje, że obiekt należy do tej określonej klasy; W przeciwnym razie powraca „FAŁSZ". W tym artykule przedstawiono wszystkie metody uzyskania typu obiektu w Javie.