Java'da tür silme işlemiyle ilgili belgelerin çoğu, kullanım durumunun SomeType<ParamType>
gibi bir türü ele aldığını varsayar. Aşağıdaki yöntem için yöntem parametresi işlemeye çalışıyorum: konteyner sınıfı bir tür DvQuantity ile nesnelleştirildiğindeJava: iç içe türetilmiş türetilmiş türlerde (yansıma) iç içe geçme
public void setOtherReferenceRanges(List<ReferenceRange<T>> referenceRanges)
, bu imza çalışma zamanında public void setOtherReferenceRanges(List<ReferenceRange<DvQuanitity>> referenceRanges)
haline gelmelidir.
Yansımayı kullanarak, List
'un actualTypeArgument
adresinde ReferenceRange<T>
olduğunu görebilirsiniz. Yansıma sınıf bilgilerini kullandığı için, bana ReferenceRange<DvQuantity>
vermesini beklemezdim. Ancak, bu yöntemi içeren sınıfı oluşturduğumda, DvQuantity
türünü T
olarak geçtim. Yani, T
'da doldurma türü Java çalışma zamanı için kullanılabilir olmalıydı, ancak bunu elde etmenin bir yolunu bulamadım. Ben herhangi bir yararlı veri içermiyor gibi yansıma yoluyla erişilen bir TypeVariableImpl
nesnesi ile biter.
Bu bilgileri çalışma zamanında keşfetmenin herhangi bir yolunu düşünebilir misiniz?
Yanıt için teşekkürler. Şimdiye kadar gördüğüm şeyi doğrular. Ne yazık ki, bu çalışmayı yapmam gereken kurulum üzerinde hiç gücüm yok. Ayrıca, diğer kontroller sayesinde, durum üzerinde kontrol sahibi olsaydım, yararlı olurdu. – mahonya