为什么不能在ArrayList <this>中使用它作为通用?

Mod*_*duo 0 java

我想知道为什么在Java中的类中不能使用它作为通用.例如说我们有一个class User,我们希望有一个static ArrayListUser.为什么我不能这样使用它:

class User{
   private ArrayList<this> listOfUsers = new ArrayList<this>();
}
Run Code Online (Sandbox Code Playgroud)

我真的很想知道为什么我必须指定User为通用而不能引用this.

Sam*_*ica 5

this不是一种类型.这是一个例子.

这样做

ArrayList<this> foo;
Run Code Online (Sandbox Code Playgroud)

就像这样做

User someUser = new User();

ArrayList<someUser> foo;
Run Code Online (Sandbox Code Playgroud)