java:如何阻止人们清除我的arraylist <string>当我使用getter方法时?

har*_*ifx 0 java generics arraylist

我在A级宣布了我的arraylist:

private ArrayList<String> user = new ArrayList<String>();
Run Code Online (Sandbox Code Playgroud)

我在同一个类(A类)中创建了我的getter方法:

public ArrayList<String> getUser()
{
return user;
}
Run Code Online (Sandbox Code Playgroud)

然后在我的第二堂课(B班),我能够做到以下几点:

A UD = new A();
UD.getUser().clear();
UD.getErrmsg().clear();
Run Code Online (Sandbox Code Playgroud)

如何防止我的第二堂课在第一堂课(A班)中清除arraylist?

Vel*_*ria 5

Collections您可以使用的类中有一种方法:return Collections.unmodifiableList(user);您可能需要各种其他方法,包括地图等方法.只需看看文档.