java松耦合避免使用';ArrayList';;改用界面
我们有一个叫做Sonar的编码标准应用程序。我有一个函数返回ArrayList,sonar说“java松耦合避免使用像‘ArrayList’这样的实现类型,而是使用接口” 例如,如果我这样做,声纳会给出那个错误java松耦合避免使用';ArrayList';;改用界面,java,arraylist,loose-coupling,Java,Arraylist,Loose Coupling,我们有一个叫做Sonar的编码标准应用程序。我有一个函数返回ArrayList,sonar说“java松耦合避免使用像‘ArrayList’这样的实现类型,而是使用接口” 例如,如果我这样做,声纳会给出那个错误 public ArrayList<String> test() { ArrayList<String> testing = new ArrayList<String>(); return testin
public ArrayList<String> test()
{
ArrayList<String> testing = new ArrayList<String>();
return testing;
}
publicArrayList测试()
{
ArrayList测试=新建ArrayList();
回归测试;
}
我不知道如何更正声纳信息以使用接口
任何建议都会有帮助。您返回的是列表,而不是数组列表
:
公共列表测试()
{
列表测试=新建ArrayList();
回归测试;
}
这种方法的优点是test()
方法的用户不必知道您实际使用的是List
的哪个实现,并且您可以切换到不同的实现,而无需更改方法的API
public List<String> test()
{
List<String> testing = new ArrayList<String>();
return testing;
}