⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 objecttest.java

📁 Java与面向对象程序设计实验教学讲义.复数类的实现,复数类的复杂运算,身份证号码的分析,图形界面设计
💻 JAVA
字号:
import java.io.*;
import java.util.*;


class EmployeeExtern{ 
  // some data that we will explicitly save
  int id;
  String name;
  int age;
  int salary;
  String hireDay;
  String department;
 
  public EmployeeExtern(){}
  
  EmployeeExtern(int id, String name, int age, int salary, String hireDay, 
  					String department) {
    this.id = id;
    this.name = name;
    this.age = age;
    this.salary = salary;
    this.hireDay = hireDay;
    this.department = department;
  }

   public String toString(){
     	return "id: " +id +"\n name:  " + name + " \n age: " 
      				+age + "\n salary:  " + salary + "\n hireDay: " 
      				+ hireDay + "\n department: " + department ;
   }   
 
}


class ManagerExtern extends EmployeeExtern implements Externalizable 
   {
     String position;
     
     public ManagerExtern(){}
     
     ManagerExtern(int id, String name, int age, int salary, String hireDay,
     		 String department, String position)
     {
       super(id,  name,  age,  salary,  hireDay,  department);
       this.position = position;
     }

 
 //实现writeExternal()方法
     public void writeExternal(ObjectOutput out) throws IOException {
       
       Date savedDate = new Date();
       
       out.writeInt(id);
       out.writeInt(age);
       out.writeObject(name);
       out.writeInt(salary);
       out.writeObject(hireDay);
       out.writeObject(department);
       out.writeObject(position);
       
       out.writeInt(savedDate.getYear());
        	
     }


//实现readExternal()方法
     public void readExternal(ObjectInput in) throws IOException,
         java.lang.ClassNotFoundException {
         	
       Date readDate= new Date();
       int savedYear;  	
       
       id = in.readInt();
       age = in.readInt();
       name = (String) in.readObject();
       salary = in.readInt();
       hireDay = (String) in.readObject();
       department = (String) in.readObject();
       position = (String) in.readObject();
       
       savedYear = in.readInt();
       age = age + (readDate.getYear()-savedYear);
      
     }
     
     public String toString(){
     	return super.toString()+ "\n position:  " + position;
     }
     
}


public class ObjectTest {

    public static void main(String args[]) {

         ManagerExtern  manager = new ManagerExtern(456789, "Jack", 40, 10000, "80/10/10", 
        								"intel", "teamleader");

         try {
   
                ObjectOutputStream fout = new ObjectOutputStream( 
                								new FileOutputStream("data2.ser"));
  
                fout.writeObject(manager);
                fout.close();
         }catch (Exception e) {
         			System.out.println(e);
       	  }

 
          manager = null;
          
          try {
  
                ObjectInputStream fin = new ObjectInputStream(
                				new FileInputStream("data2.ser"));
  
                manager = (ManagerExtern) fin.readObject();
           } catch (Exception e) {
         			System.out.println(e);
       		  }
 
      	  System.out.println("manager "+manager.toString());
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -