为别人提供方法工具类的时候传递参数有什么特别的要求吗?
昨天花时间为别人写了个工具类,作用就是生成Rss文件,具体代码如下:
public class RssBuilder {
privateSyndFeedfeed;
privateListentries;
privateSyndEntryentry;
publicRssBuilder(){
feed=newSyndFeedImpl();
feed.setFeedType("rss_2.0");
entries=newArrayList();
}
publicvoidcreateChannelImage(Stringtitle,Stringlink,Stringurl,Stringdescription)throwsException{
SyndImageimage=newSyndImageImpl();
image.setTitle(title);
image.setLink(link);
image.setUrl(url);
image.setDescription(description);
feed.setImage(image);
}
/**
*创建一个频道
*@paramtitle 频道标题
*@paramlink 频道对应的连接
*@paramdescription 频道描述
*@paramlanguage 频道所用语言
*@parampubDate 频道发布时期
*@paramcopyright 版权所有
*@throwsException
*/
publicvoidcreateChannel(Stringtitle,Stringlink,Stringdescription,Stringlanguage,DatepubDate,Stringcopyright)throwsException{
feed.setTitle(title);
feed.setLink(link);
feed.setDescription(description);
feed.setLanguage(language);
feed.setPublishedDate(pubDate);
feed.setCopyright(copyright);
}
/**
*添加新闻子项
*@paramtitle 标题
*@paramlink连接地址
*@paramdescription 简单描述
*@parampubDate 发布日期
*@paramcategory 所属范围
*@paramauthor 发布作者
*@throwsException
*/
publicvoidcreateItems(Stringtitle,Stringlink,Stringdescription,DatepubDate,Stringcategory,Stringauthor)throwsException{
entry=newSyndEntryImpl();
//设置新闻标题
entry.setTitle(title);
//设置新闻的连接地址
entry.setLink(link);
//设置新闻简介
SyndContentcontent=newSyndContentImpl();
content.setType("text/plain");
content.setValue(description);
entry.setDescription(content);
//设置发布时间
entry.setPublishedDate(pubDate);
//设置频道所属的范围
SyndCategorycate=newSyndCategoryImpl();
cate.setName(category);
ListcateList=newArrayList();
cateList.add(cate);
entry.setCategories(cateList);
//设置作者
entry.setAuthor(author);
//将新闻项添加至数组中
entries.add(entry);
}
/**
*添加新闻子项
*@paramtitle 标题
*@paramlink连接地址
*@paramdescription 简单描述
*@parampubDate 发布日期
*@paramcategory 所属范围
*@paramauthor 发布作者
*@paramenclosure 流媒体播放文件地址
*@throwsException
*/
publicvoidcreateItems(Stringtitle,Stringlink,Stringdescription,DatepubDate,Stringcategory,Stringauthor,Stringenclosure)throwsException{
entry=newSyndEntryImpl();
//设置新闻标题
entry.setTitle(title);
//设置新闻的连接地址
entry.setLink(link);
//设置新闻简介
SyndContentcontent=newSyndContentImpl();
content.setValue(description);
entry.setDescription(content);
//设置发布时间
entry.setPublishedDate(pubDate);
//设置频道所属的范围
SyndCategorycate=newSyndCategoryImpl();
cate.setName(category);
ListcateList=newArrayList();
cateList.add(cate);
entry.setCategories(cateList);
//设置作者
entry.setAuthor(author);
//设置流媒体播放文件
SyndEnclosureen=newSyndEnclosureImpl();
en.setUrl(enclosure);
ListenList=newArrayList();
enList.add(en);
entry.setEnclosures(enList);
//将新闻项添加至数组中
entries.add(entry);
}
/**
*生成XML文件
*@paramfilePath 文件保存路径和名称
*@throwsException
*/
publicvoidbuildChannel(StringfilePath)throwsException{
feed.setEntries(entries);
SyndFeedOutputoutput=newSyndFeedOutput();
Writerwriter;
writer=newOutputStreamWriter(newFileOutputStream(filePath),"UTF-8");
output.output(feed,writer);
}
}让我们的项目负责人看了,他要我把createItems()方法中的多个参数再封装一个类,让用户传的时候只传一个包含这个类的List对象,想来想去就是不明白,为什么要这样呢?
按照我现在的写法的话,别人用的时候也不用再写什么特别的类啦,只用把自己从数据库里查询出来的结果的对象以参数的形式传递过来就可以啦,这样不就更简单啦。
为什么一定要传一个List对象呢?
写工具类的时候有什么特别的要求吗?