Derleme zamanında bir sınıf genişletme yeteneğine sahibim, ancak bu alt sınıfın bir örneğini, hali hazırda başlatılmış olan üst sınıfın bir örneğini kullanarak çalışma zamanında oluşturabilmem gerekir. Teorik olarak bu mümkün olmalıdır, çünkü alt sınıf kurucuları alt sınıf kurucusundan önce çağrılmışlardır.Java: Çalışma Saatinde Sınıfı Genişletme
Anlık sınıfımın alt sınıfını değiştirmek veya orijinal eşgörünümünü kesmek için programa yeterince erişemiyorum.
Kullanım Durumu: X sınıfının mevcut bir örnek dizisi vardır. Kodum sonradan yüklenir. Yüklenen alt sınıf Y X'i genişleterek X örneklerinden birinin yöntemlerinden birini geçersiz kılmam gerekiyor. Üst program, yalnızca bu dizi aracılığıyla nesnelere erişir, bu yüzden bu dizi öğesini Y örneğimle değiştirmek istiyorum, ancak Orijinal olarak bu diziye örneklenmiş gibi davranır. Üst sınıf örneğini ve ileriye dönük çağrıları ekleyemem ve süper sınıfı yeniden yerleştirmekle ilgili zor komplikasyonlar yapıyorum.
Umarım bu daha açıktır.
Lütfen soruyu tekrarlayın. –
Gerçekte neyi başarmaya çalıştığınıza dair bir örnek de verebilir misiniz? Sadece istediğiniz, ama muhtemelen imkansız yerine, bunu yapma yöntemi. – millimoose
Mevcut satırı "public static Foo foo = new Foo();" değiştiremediğim. Ben "public class Bar Foo genişler" var ve ben ilk satır "kamu statik Foo foo = yeni Bar()" olduğu gibi "foo = yeni Bar (...)" yapmak istiyorum. – JAKJ