package org.com;import java.io.FileOutputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;public class Test { /**
 * @param args
 */
public static void main(String[] args) {
// TODO Auto-generated method stub
        new Test();
}
Test(){
   try{
             ObjectOutputStream obj = new ObjectOutputStream(new FileOutputStream("d://test.txt"));
             obj.writeObject(new ObjectTest().toString());
             obj.flush();
             obj.close();
   }catch(Exception e){
   e.printStackTrace();
   }
  } }
class ObjectTest implements Serializable{

private String name2 = "name2";
private String name3 = "name3";
private String name1 = "name1" ;
public ObjectTest(){}
public String getName1() {
return name1;
}
public void setName1(String name1) {
this.name1 = name1;
}
public String getName2() {
return name2;
}
public void setName2(String name2) {
this.name2 = name2;
}
public String getName3() {
return name3;
}
public void setName3(String name3) {
this.name3 = name3;
}
public String toString(){
return name1+":"+name2+":"+name3;
}
}
请问上面的代码有什么地方可以优化或改正的地方!谢谢..

解决方案 »

  1.   

    优化可以加个单例模式嘛,就不用NEW了
      

  2.   

    本人观点:
    obj.writeObject(new ObjectTest().toString());
    以后就不能再读取以恢复此对象了实例。直接obj.writeObject(new ObjectTest());
    而使用这种方法保存对象实例,会打上jdk版本的铬印,带来一定的兼容性问题。
    保存对象推荐使用xml方式保存。
      

  3.   

    Serializable最好加上那个UID属性
    toString也可以改成StringBuffer.append