Java基本

[Java] ガーベジコレクションがでオブジェクトが破棄される直前に処理を行う(finalize)

投稿日:

ガーベジコレクションがでオブジェクトが破棄される直前に処理を行うには、
finalizeメソッドをオーバーライドしてそのメソッドの中に処理を記述すればOKです。

サンプルソース

例)オーバーライドしたfilnalizeメソッドが呼び出されるサンプル

実行例
インスタンスを生成します。 インスタンスを解放します。 ガーベージコレクションを強制的に実行します。 ガベージコレクションが呼び出されました

備考

  • ガーベージコレクションを強制的に実行するには、「System.gc();」を実行します。
  • ガーベージコレクションの実行タイミングは環境に左右されるため、finalizeがいつ実行されるタイミングは保証されません。
  • なので、処理を行った後ののclose処理など必ず実行しなければならない処理はfinalizeに記述してはいけません。

スポンサーリンク

スポンサーリンク

-Java基本
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

関連記事

[Java例外] java.lang.ArrayIndexOutOfBoundsException

以下のように表示されます。 (例外表示) Exception in thread "xxx" jav ...

[Java] Listの要素をソートする(既定クラス)

Listの要素をソートしたい時は、java.util.Collectionsクラスのsortメソッド ...

[Java] 文字列の前後の空白を取り除く(.trim)

文字列の前後の空白を取り除くには、.trimを使用します。 構文 (java.lang.String ...

[Java] List内に指定した要素があるかどうか判定する(.contains)

List内に指定した要素があるかどうか判定するには、.containsを使用します。 サンプルソース ...

[Java] Map型の全要素をループ処理する

Map型の全要素をループ処理するサンプルです。 サンプルソース 例)Map型の全要素のkeyとval ...