实例化----serializable--也是种创建对象的方法

时间:2021-08-30 21:37:44
实例化----serializable--也是种创建对象的方法
 
 
public  class  Serializable_ {
        public  static  void  main(String[] args)  throws  Exception {
             write( "D:/javac/10.txt" );       //序列化
             read( "D:/javac/10.txt" );        //反序列化
      }
        public  static  void  write(String destPath)  throws  Exception {
            Employee obj =  new  Employee( "bkk"  ,100);
 
            File dest =  new  File(destPath);
            
            ObjectOutputStream oos =  new  ObjectOutputStream(
                          new  BufferedOutputStream(
                                      new  FileOutputStream(dest)
                                    )
                        );
            
            oos.writeObject(obj);
            
            oos.flush();
            oos.close();
      }
        public  static  void  read(String srcPath)  throws  Exception {
            File src =  new  File(srcPath);
            
            ObjectInputStream ois =  new  ObjectInputStream(
                          new  BufferedInputStream(
                                      new  FileInputStream(src)
                                    )
                        );
            
            Object obj = ois.readObject();
            
              if (obj  instanceof  Employee) {
                  Employee emp = (Employee)obj;
                  System.  out .println(emp.getName());
                  System.  out .println(emp.getSalary());
            }
            
            ois.close();
      }
}
 
class  Employee  implements  java.io.Serializable {
 
        private  static  final  long  serialVersionUID  = 1L;
 
        public  transient  String  name ;
        public  int  salary  ;
      
        public  Employee() {
              super ();
      }
      
        public  Employee(String name,  int  salary) {
              super ();
              this . name  = name;
              this . salary  = salary;
      }
 
        public  String getName() {
              return  name  ;
      }
 
        public  void  setName(String name) {
              this . name  = name;
      }
 
        public  int  getSalary() {
              return  salary  ;
      }
 
        public  void  setSalary( int  salary) {
              this . salary  = salary;
      }
}