我的問題是,我試圖實例與具有相同課程作爲我的函數的參數的參數列表:創建一個變量參數列表<?>
public <A extends CommunicationObject> List<A> Myfunction(A myObject){
List<A> firstList;
//do something
}
當我調用該函數:
List<person> persons = Myfunction(person myObject);
第一個列表以A作爲CommunicationObject,這不是我想要的。
我也試着這樣做:
public <A extends CommunicationObject> List<A> Myfunction(A myObject){
List<myObject.getClass()> firstList;
//do something
}
,但它是不允許的。有沒有可能解決這個問題?
更新:
「人」 是 「CumminicationObject」 的子類。有一些屬性存在於個人而不是CommunicationObject中。其實這只是一個例子。我想要做的是將JSON轉換爲列表「<」A「>」,並且A可以是「person」或擴展CommunicationObject的其他類。
JSON包含與列表「<」A「>」中的「A」類相同的屬性。
爲了進行轉換,列表「<」A「>」中的參數「A」必須與myfunction(A myObject)中的我的對象類相同。
我真的不明白你的問題。 'person'是'CommunicationObject'的子類型嗎?如果否:爲什麼你將它傳遞給'MyFunction'?如果是:是不是與你想要的相同的實際行爲? –
看看更新 – deltascience