java语法探讨问题
其实就是探讨  下列两语句的写法区别:
--------------
语句一:SystemBigSlave slaveBean =new SystemBigSlave() 写在for循环内:    
       SystemBigSlaveForm BigSlaveform = (SystemBigSlaveForm) form;
       List list=new ArrayList();
       FormFile[] files=BigSlaveform.getFiles();//取出多个file文件
       for(int i=0;i<files.length;i++){
         //假设经两个循环,files.length ==2;
         SystemBigSlave slaveBean =new SystemBigSlave()  
          String fileName = files[i].getFileName();//获得文件名信息
          slaveBean.setFileName(fileName);
         list.add(slaveBean)
          }
           //循环结束最终将装有持久化类的集合放入BigSlaveform中
          BigSlaveform.setList(list);
-------------------------------------------------
语句二:SystemBigSlave slaveBean =new SystemBigSlave() 写在for之前
       SystemBigSlaveForm BigSlaveform = (SystemBigSlaveForm) form;
       SystemBigSlave slaveBean =new SystemBigSlave()  
       List list=new ArrayList();
       FormFile[] files=BigSlaveform.getFiles();//取出多个file文件
        for(int i=0;i<files.length;i++){
         //假设经两个循环,files.length ==2;
           String fileName = files[i].getFileName();//获得文件名信息
          slaveBean.setFileName(fileName);
         list.add(slaveBean)
          }
           //循环结束最终将装有持久化类的集合放入BigSlaveform中
          BigSlaveform.setList(list);
--------------------------------------------------  
 这两个语句在返回的页面中获取slaveBean 时结果不一样。两个语句都能从list获得两个slaveBean ,但结果却不相同。
  语句一获得的时两个不同的slaveBean (实际上我也时上传两个不同的文件的,达到我要的效果),但第二个语句确是相同的
  slaveBean 。为什么呢?? 能说说原理吗?---------------------------------------------
我在 struts 中的action 类是这样些的:
  public ActionForward save(ActionMapping mapping, ActionForm form,
                            HttpServletRequest request, HttpServletResponse response) throws       
HibernateException {
       SystemBigSlaveForm BigSlaveform = (SystemBigSlaveForm) form;
       List list=new ArrayList();
       FormFile[] files=BigSlaveform.getFiles();//取出多个file文件
       for(int i=0;i<files.length;i++){
         SystemBigSlave slaveBean =new SystemBigSlave() ;       try { //取文件类型
                String fileName = files[i].getFileName();//获得文件名信息
               slaveBean.setFileName(fileName);
              SystemBigSlaveDAO  dao = SystemBigSlaveFactoryDAO.getInstance();
              dao.savaBigSlave(slaveBean);
              saveFile(slaveBean, filePath);
           }
        }catch (Exception e) {
                  return null;
          } //取文件类型
           list.add(slaveBean); //循环把附件持久化类放入list     
           }
      //循环结束
      BigSlaveform.setList(list);//将装有持久化类的集合放入BigSlaveform中
       request.setAttribute("BigSlaveform",BigSlaveform);
      return mapping.findForward("result");
  }
----------------------------------------------
result.jsp的部分代码
<table width="75%" border="0" cellspacing="0" cellpadding="0" id="tt" style="display:none;">
	<span id="tableBigSlave2">
	<tr><td>
	<%
		List list=BigSlaveform.getList();//取出装有持久化类的集合
		for(int i=0;i<list.size();i++){
                   SystemBigSlave BigSlave=(SystemBigSlave)list.get(i);//实例持久化
                      String fileName=BigSlave.getFileName();//取得文件类型后缀名
                       System.out.println("fileName========"+fileName);             }%>
                // fileName如果上传的是不同的文件,这么却得到同一文件名,为什么呢
	</td></tr>
	</span>