Java
 Computer >> コンピューター >  >> プログラミング >> Java

JavaでのSerialVersionUIDキーワードの重要性?


SerialVersionUID
  • SerialVersionUID プライベートスタティックファイナルロングとして宣言する必要があります Javaの変数。この数は、クラスの状態とクラス属性に基づいてコンパイラーによって計算されます。これは、JVMがファイルからオブジェクトの状態を読み取るときにオブジェクトの状態を識別するのに役立つ番号です。
  • SerialVersionUID 逆シリアル化中に使用できます シリアル化されたオブジェクトの送信者と受信者が、シリアル化と互換性のあるそのオブジェクトのクラスをロードしたことを確認します。 。逆シリアル化オブジェクトがシリアル化と異なる場合、 InvalidClassExceptionをスローする可能性があります 。
  • serialVersionUIDの場合 が指定されていない場合、ランタイムはデフォルトのserialVersionUIDを計算します クラスのさまざまな側面に基づいたそのクラスの場合。

import java.io.*;
class Employee implements Serializable {
   private static final long serialVersionUID = 5462223600l;
   int empId;
   String name;
   String location;
   Employee(int empId, String name, String location) {
      this.empId = empId;
      this.name = name;
      this.location = location;
   }
   void empData() {
      System.out.println("Employee Id is: "+ empId);
      System.out.println("Employee Name is: "+ name);
      System.out.println("Employee Location is: "+ location);
   }
}
public class EmployeeTest {
   public static void main(String[] args)throws Exception{
      Employee emp = new Employee(115, "Raja", "Hyderabad");
      emp.empData();
      FileOutputStream fos = new FileOutputStream("E:\\Employee.txt");
      ObjectOutputStream oos = new ObjectOutputStream(fos);
      oos.writeObject(emp);
      System.out.println("Object Serialized");
   }
}
出力
Employee Id is: 115
Employee Name is: Raja
Employee Location is: Hyderabad
Object Serialized



  1. Java 9でのdestroyForcibly()メソッドの重要性?

    destroyForcibly() メソッドを使用してプロセスを強制終了できます 。プロセスが終了またはフリーズした場合に必要になります。たとえば、 isAlive() destroyForcibly()の後にメソッドはtrueを返します と呼ばれます。 destroyForcibly() メソッドは、終了が正常に要求された場合はtrueを返し、それ以外の場合はfalseを返します。 構文 boolean destroyForcibly() 以下の例では、メモ帳を起動できます。 アプリケーションであり、 destroyForcibly()の後に終了します メソッドが呼び出されました。 例

  2. Pythonでの従業員の重要性

    従業員情報のデータ構造があり、従業員の一意のID、重要度の値、および直属の部下のIDがあるとします。例として、従業員1は従業員2のリーダーであり、従業員2は従業員3のリーダーです。そして、それらの重要度の値がそれぞれ15、10、および5であるとします。次に、従業員1は[1、15、[2]]のようなデータ構造を持ち、従業員2は[2、10、[3]]を持ち、従業員3は[3、5、[]]を持ちます。 したがって、会社の従業員情報と従業員IDがある場合は、この従業員とそのすべての部下の重要度の合計値を見つける必要があります。 したがって、入力が[[1、5、[2、3]]、[2、3、[]]、[3、3、[]]