これが私が決定しようとしているものです...
テキスト ファイルに行を追加するユーティリティ クラスがあります。これは、共通のログ ファイルなど、他の多くのクラスで使用する必要があります。
私の最初の実装では、それを使用したいすべてのクラスに参照のないインスタンスを作成させました。
new Logger(logline,logname);
コンストラクターは を作成しPrintWriter
、行を追加してファイルを閉じます。
追加されたすべての行に対して新しいインスタンスが作成されるため、これは無駄に思えました。
別の方法は、この共通クラスで「writeln」と呼ばれる静的メソッドを使用することでした。これは、静的メソッドとデータが同じメモリを何度も再利用することを理解していたためです...しかし
この静的メソッドは、PrintWriter
ジョブを実行するためにのインスタンスを作成します。つまり、 PrintWriter
#1 のように、行ごとに の新しいインスタンスが作成されるということではないでしょうか。
とにかく、(私はJavaに比較的慣れていません)これを行うためのよく知られた承認された方法はありますか?
ありがとう