Javaちょこっとリファレンス ブログ

Java開発時にぜひご利用ください。

Java基本

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

投稿日:

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

サンプルソース

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

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

備考

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

スポンサーリンク

スポンサーリンク

-Java基本
-

執筆者:


comment

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

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

関連記事

[Java] String型→数値型に変換する

String型から数値型に型変換をするサンプルです。 String型→基本データ型の型変換は各型のラ ...

[Java] StringBuilderのバッファ容量を確認する(.capacity)

StringBuilderのバッファ容量を確認するには .capacity()メソッドを使用します。 ...

[Java共通関数] 文字列の前後のダブルクォーテーションを削除するFunction

文字列の前後のダブルクォーテーションを削除するFunctionです。 サンプルソース 例)文字列の前 ...

[Java] 数値リテラルで進数を明示的に指定する

数値リテラルで進数を明示的に指定する方法です。 たとえば数値を8進数で指定したい、16進数で指定した ...

[Java] 文字列の長さを取得する(length、codePointCount)

文字列の文字数を取得するにには、.length() または .codePointCount() を使 ...