关于get和set以及何时使用超类的java问题
我有以下获取方法:
public List<PersonalMessage> getMessagesList() {
List<PersonalMessage> newList = new ArrayList<PersonalMessage>();
for(PersonalMessage pMessage : this.listMessages) {
newList.add(pMessage.clone());
}
return newList;
}
您可以看到,如果我需要将实现从ArrayList
更改为其他内容,我可以很容易地做到这一点,我只需要更改newList
的初始化,所有其他依赖于getMessageList()
返回内容的代码仍然可以工作
然后我有一套方法:
public void setMessagesList(ArrayList<PersonalMessage> listMessages) {
this.listMessages = listMessages;
}
我的问题是,我应该在方法签名中使用List
而不是“ArrayList”吗
我决定使用ArrayList
,因为这样我可以强制实现我想要的实现,否则可能会到处都是不同类型的列表
但我不确定这是不是一条路
共 (0) 个答案