Java 与ArrayList不兼容的类型错误

Java 与ArrayList不兼容的类型错误,java,types,arraylist,Java,Types,Arraylist,在我的Java类中,我定义了以下属性: private ArrayList requests; 这是类中的构造函数: public LeaveRecord() { this.requests = new ArrayList<Request>(); this.daysLeft = ALLOWANCE; } 但是我在返回行(上面代码段中的第3行)上得到一个错误,它说它需要leaverecord.Request,但找到java.lang.Object 我不知道会出什么问

在我的Java类中,我定义了以下属性:

private ArrayList requests;
这是类中的构造函数:

public LeaveRecord() {
    this.requests = new ArrayList<Request>();
    this.daysLeft = ALLOWANCE;
}
但是我在返回行(上面代码段中的第3行)上得到一个错误,它说它需要
leaverecord.Request
,但找到
java.lang.Object

我不知道会出什么问题,因为我将ArrayList定义为
Request
类型

有人能给我指出正确的方向吗?谢谢。

将其更改为

private ArrayList requests;

private ArrayList<Request> requests
ArrayList是原始类型。对泛型类型ArrayList的引用应为
参数化的

将其更改为

private ArrayList requests;

private ArrayList<Request> requests
ArrayList是原始类型。对泛型类型ArrayList的引用应为
参数化的

或可能的列表(以减少接口的耦合和代码)。也许会让它成为最后一个。旧代码也应该生成一个编译器警告,关于缺少类型注释。或者可能是
List
(以减少耦合和代码到接口)。也许会让它成为最后一个。旧代码也应该生成一个编译器警告,关于缺少类型注释。
 private ArrayList requests;