我已声明:
private ArrayList<? extends Transaction> transactionArray;
我想将Transaction的子类添加到transactionArray中,如下所示:
public void pushTransaction( Transaction theTrans ) {
transactionArray.add( theTrans );
}
但是这被消息
拒绝了方法......不适用于参数......
我是否必须为每个Transaction子类编写一个单独的pushTransaction
方法?或者我如何使此方法接受Transaction及其子类作为有效参数?
更新:我将Transaction声明为抽象类,并且只处理其子类,这有什么不同吗?
答案 0 :(得分:-1)
您不需要使用泛型语法。 。当您传递Transaction对象或Transaction的子类时,您的方法应该像ling一样工作。确保您的类实际扩展了Transaction。此外,可能有多个名为Transaction的类,因此请检查包。