我有多個類,它們都有一個共同的領(lǐng)域。我正在編寫一個處理提取這個公共字段的方法。例如:class A{ .. String blah; ..}class B{ .. String blah; ..}因此,可以使用接受泛型類的方法來實現(xiàn)這一點,而不是為每個類類型編寫多個方法嗎?我想要的是有一種類型的方法:void func(List <T> data){ for(T t:data){ print t.blah() }}我知道上面的代碼是不正確的,但是我們?nèi)绾潍@得類似的功能呢?
1 回答

慕田峪4524236
TA貢獻(xiàn)1875條經(jīng)驗 獲得超5個贊
首先,創(chuàng)建一個包含所有通用方法簽名的接口。
interface Blah {
String getBlah();
}
然后,創(chuàng)建現(xiàn)有的類A并B實現(xiàn)該接口。(用于@Override確保您正確地覆蓋該方法。)
最后,在 中func,獲取實現(xiàn)該接口的對象列表。
void func(List<? extends Blah> data) {
for (Blah t : data) {
System.out.println(t.getBlah());
}
}
添加回答
舉報
0/150
提交
取消