Java'da Nesne Türü Nasıl Alınır?

Java Da Nesne Turu Nasil Alinir



Bir nesne, kendi durumu ve davranışı olan fiziksel bir varlıktır ve bir Java sınıfının benzersiz bir örneği olarak hareket eder. BT. Nesne bir kaynaktan geliyorsa, nesne tipini incelemek faydalı olur. Ayrıca, farklı nesneler içeren bir koleksiyonla çalışırken veya aynı tür değişkenlerle mantıksal işlemin yürütülmesi gerektiğinde bir nesnenin türünü bilmek çok önemlidir.

Bu makale, Java'da bir nesnenin türünü alma yöntemini öğrenmenize yardımcı olacaktır.

Java'da Nesne Türü Nasıl Alınır?

Java'da önceden tanımlanmış veya kullanıcı tanımlı sınıf nesnesinin türünü almak için şunları kullanabilirsiniz:







  • getClass() yöntem
  • örneği Şebeke

Şimdi bahsedilen yöntemlerin her birini tek tek kontrol edeceğiz!



Yöntem 1: getClass() Yöntemini Kullanarak Önceden Tanımlı Sınıf Nesnesinin Türünü Alın

Java'da String, Double, Integer ve daha fazlası gibi sarmalayıcı sınıflar gibi önceden tanımlanmış sınıflarımız vardır. Bazen önceden tanımlanmış sınıfları kullanırken nesne türünü doğrulamamız gerekir. Bu amaçla Java bir “ getClass() ” yöntemine ait olan “ Nesne ' sınıf.



Sözdizimi
Sözdizimi “ getClass() ” yöntemi şu şekilde verilmiştir:





x. getClass ( )

Burada, “ getClass() ” yöntemi belirtilen sınıfın sınıfını döndürür. x ' nesne.

Örnek
Bu örnekte, “ adlı bir String tipi nesne oluşturacağız. x ” aşağıdaki değeri içerir:



Sicim x = 'Merhaba' ;

Ardından, “ kullanarak bir ifade yazdıracağız. System.out.println() ' yöntem:

sistem . dışarı . println ( 'x'e mi ait?' ) ;

Son olarak, “nesnenin türünü alacağız” x 'arayarak' getClass() ' yöntem:

sistem . dışarı . Yazdır ( x. getClass ( ) ) ;

Çıktı, oluşturulan değişkenin Java String sınıfına ait olduğunu gösterir:

“instanceof” operatörünü kullanarak nesne türünü elde etmek için başka bir yöntem görelim.

Yöntem 2: “instanceof” Operatörünü Kullanarak Önceden Tanımlı Sınıf Nesnesinin Türünü Alın

Ayrıca “ örneği ” operatörü, bir Java programında nesne türünü kontrol eder. Bu operatör, nesnenin belirli bir sınıfın örneği olup olmadığını gösteren bir boole değeri döndürür.

Sözdizimi
Sözdizimi “ örneği ' Şöyleki:

x örneği tamsayı

Burada, ' x ” bir nesnedir ve “ tamsayı ”, önceden tanımlanmış Java sarmalayıcı sınıfıdır. “ örneği ” operatörü, nesnenin belirtilen sınıfa ait olup olmadığını kontrol eder ve bir boole değeri döndürür.

Örnek
Bu örnekte, bir nesnemiz var “ x ” olan Tamsayı sınıfının 5 ” değeri olarak:

tamsayı x = 5 ;

Ardından, “ kullanarak bir ifade yazdıracağız. System.out.println() ' yöntem:

sistem . dışarı . Yazdır ( 'x, Tamsayı sınıfının bir örneği mi?' ) ;

Şimdi nesnenin bir Integer sınıfının örneği olup olmadığını kontrol edeceğiz:

sistem . dışarı . Yazdır ( x örneği tamsayı ) ;

Görüntülenen çıktı “ doğru 'nesne olarak' x ”, Tamsayı sınıfının bir örneğidir:

Bu noktada, kullanıcı tanımlı sınıf nesnesinin türünü nasıl alacağınızı merak ediyor olabilirsiniz. Aşağıdaki bölüm bu konuda size yardımcı olacaktır.

Yöntem 3: getClass() Yöntemini Kullanarak Kullanıcı Tanımlı Sınıf Nesnesinin Türünü Alın

Ayrıca, kullanıcı tanımlı sınıf nesnesinin türünü “ yardımıyla da elde edebilirsiniz. getClass() ' yöntem. Böyle bir senaryoda, nesneyi “ kullanarak sınıf adıyla karşılaştıracağız. == ” karşılaştırma operatörü.

Sözdizimi
Belirtilen amaç için, sözdizimi “ getClass() ” yöntemi şu şekilde verilir:

benim sınıfımObj. getClass ( ) == Sınıfım. sınıf

Burada, “ getClass() ” yöntemi, “ tarafından çağrılır. benim sınıfımObj ” nesnesinin” Sınıfım ” ve ardından karşılaştırma operatörü kullanılarak adla karşılaştırılır “ == ”.

Örnek
Bu örnekte, “adlı üç sınıfımız var. Sınıfım ”, “ MynewClass ', ve ' Örnek ”, burada MyClass, MynewClass'ın bir üst sınıfı olarak hareket eder:

sınıf Sınıfım { }

MynewClass ”, genişletilmiş olduğu için bir alt sınıftır” Sınıfım ”:

sınıf MynewClass uzanır Sınıfım { }

“ sınıfının main() yönteminde Örnek ”, ebeveyn sınıfının bir nesnesini ilan edip somutlaştıracağız” Sınıfım ”. Ardından oluşturulan nesnenin hangi sınıfa ait olduğunu kontrol edin; ebeveyn mi çocuk mu Bunu yapmak için, ' getClass() ” yöntemini oluşturulan nesneyle ve if-else-if koşullarını kullanarak üst ve alt sınıf adlarıyla karşılaştırın:

halka açık sınıf Örnek {
halka açık statik geçersiz ana ( Sicim [ ] argümanlar ) {
Sınıfım SınıfımObj = yeni Sınıfım ( ) ;
eğer ( benim sınıfımObj. getClass ( ) == Sınıfım. sınıf ) {
sistem . dışarı . println ( ''myclassObj' nesnesi bir 'MyClass' türüdür' ) ;
} başka eğer ( benim sınıfımObj. getClass ( ) == YeniSınıfım. sınıf ) {
sistem . dışarı . println ( ''myclassObj' nesnesi bir 'MynewClass' türüdür' ) ;
}
}
}

Çıktı, nesnenin “ benim sınıfımObj ”, “ adlı üst sınıfa aittir. Sınıfım ”:

Şimdi, bir sonraki bölüme doğru ilerleyin!

Yöntem 4: “instanceof” Operatörünü Kullanarak Kullanıcı Tanımlı Sınıf Nesnesinin Türünü Alma

Önceden tanımlanmış sınıflara benzer şekilde, kullanıcı tanımlı sınıflar için de nesnenin türünü “ örneği ' Şebeke.

Sözdizimi
Sözdizimi aşağıda verilmiştir:

benim sınıfımObj örneği Sınıfım

Burada, “ örneği ” operatörü, “ benim sınıfımObj ” örneğinin bir örneğidir Sınıfım ' ya da değil.

Örnek
Şimdi daha önce bahsedilen örnekte oluşturduğumuz sınıfları kullanacağız. Tek fark, “ örneği ” operatörü, oluşturulan nesne örneğinin üst veya alt sınıfa ait olup olmadığını doğrulamak için:

halka açık sınıf Örnek {
halka açık statik geçersiz ana ( Sicim [ ] argümanlar ) {
Sınıfım SınıfımObj = yeni Sınıfım ( ) ;
eğer ( benim sınıfımObj örneği Sınıfım ) {
sistem . dışarı . println ( ''myclassObj' nesnesi, 'MyClass'ın bir örneğidir' ) ;
} başka eğer ( benim sınıfımObj örneği MynewClass ) {
sistem . dışarı . println ( ''myclassObj' nesnesi, 'MynewClass'ın bir örneğidir' ) ;
}
}
}

Verilen çıktı, “ örneği ” operatörü, nesnenin türünü “ olarak doğruladı Sınıfım ”:

Java'da nesne türü alma ile ilgili tüm yöntemleri derledik.

Çözüm

Java'da bir tür nesne elde etmek için “ getClass() ” yöntemi veya “ örneği ' Şebeke. Bu yöntemler, hem önceden tanımlanmış hem de kullanıcı tanımlı sınıflar için nesne türlerini kontrol etmek için kullanılabilir. getClass() yöntemi sınıf adını döndürürken, 'instanceof' operatörü bir boole değeri döndürür, burada ' doğru ” nesnenin belirtilen sınıfa ait olduğunu gösterir; aksi takdirde, ' yanlış ”. Bu makale, Java'da nesne türünü elde etmek için tüm yöntemleri sağladı.