最終変数 がありますsave
。これは、いくつかの情報のシリアル化可能なクラスです。私がやろうとしたことは、そのシリアル化可能なクラスとして最終変数を設定することですが、競合する警告がいくつか表示されます。ファイルがロードできない/存在しない場合は、単に新しいインスタンスを作成し、そうでない場合は古いインスタンスを使用するようにしようとしています。
私の問題は、コンストラクターの開始、終了、および ObjectInputStream からのオブジェクトの読み取り時にコードでコメントされています。
private final CannonSet save;
public CannonManager(ManCannon plugin) { // Warning that save is not initialized
if (/* some conditional statement */) {
//lot of code removed, unnecessary to problem
//essentially, save was set conditionally here (loaded from file)
this.save = new CannonSet();
}
if (this.save == null) {
this.save = new CannonSet(); // Warning that save may have already been set
}
}