Bu yüzden gerçek dünyada (akademik projelerin dışında) programlama konusunda oldukça yeniyim ve instanceof
belirli bir nesnenin hangi sınıf olduğunu belirlemek için kullanmanın kötü bir şey olduğunu söyleyen birçok gönderiyle karşılaştım .
Benim durumum üç sınıfım, bir temel ürün sınıfı, biri bunu genişleten diğeri ise onu genişletiyor. Bunlar bir veritabanında aynı tabloda depolanır ve ben onları çekmek için her yöntemleri kullanmak için gereken bazı kod var.
Bunu yapmanın en iyi yolu nedir? Polimorfizm hakkında bazı şeyler okudum ama yaşadığım sorunu gideren örnekler bulamıyorum. Hepsi genellikle farklı nesnelerden farklı şeyler çekmem gerektiğinden benim için çalışmayacak bir yöntemi geçersiz kılar.
Bunu yapmanın daha iyi bir yolu var mı ya instanceof
da nesnelere özgü alanları elde etmek için kullanma ya da bir tür yansıma ile sıkışmış mıyım?
getSpecifics()
Her biri sınıfa özgü veriler döndüren her biri için farklı bir şekilde uygulanan bir yöntem gibi bir şey mi?
instanceof
yanlış olması değil; bir nesnenin sınıfını bulmaya çalışmak genellikle problemdir. Her zaman yanlış değil, ama muhtemelen sizin durumunuzda. Belki bize ne yapmaya çalıştığınızı söylerseniz, polimorfizm kullanarak bir çözüm önerebiliriz.