Object.clone()の性能

Objectにはclone()というメソッドが存在します。このメソッドは自身と同じ内容のオブジェクトを新たに生成してそれを返却します。 コピー元のオブジェクトが保持しているオブジェクトに関しては同一のものを参照するので、自分の頭の中のイメージとしてはオ…

FileDialogのsetFilenameFilter

FileDialogのsetFilenameFilterを呼んでFilenameFilterを設定してもまったく機能しないという現象が発生しました。 javadocを確認してみると、どうやらSunのWindows用のVMでは実装されてないようです。 setFilenameFilterpublic void setFilenameFilter(File…

ファイルの拡張子の判別方法

ファイルの拡張子が必要なものであるかを判断する場合、Fileクラスに拡張子を取得するメソッドがないので結局ファイル名から拡張子を取得するのですが、その時に気にした方が良いかも知れないことのメモ。 File#getName()よりもFile#getPath()を用いた方が良…

GUIアプリの起動ロジッククラス

ちょっとしたGUIアプリを作成する際にmainメソッドで毎回似たような処理を行うのですが、毎回似たような処理を書くのもなんなのでクラスにまとめてみました。 import java.awt.Dimension; import javax.swing.JComponent; import javax.swing.JFrame; import…

三項演算子の有効性についての調査

三項演算子について性能面の観点から有効性について調査してみました。 調査方法としてはMath.min(int, int)と同様の処理を行うメソッドを三項演算子を用いたものとそうでないものを作成しバイトコードの比較を行うことで確認します。 public class TestTern…

複数のフィールドを一つの配列フィールドにまとめるという手法の有効性に関する調査

携帯電話向けのアプリを作成する際にクラスサイズを小さくする手法として複数のフィールドを一つの配列フィールドにまとめるという手法がありますが、個人的にはこの手法は可読性が低下し余計な配列アクセスを行うことにより性能も劣化するものと思われるの…

iアプリにおける通信先制限

通常のiアプリはアプリをダウンロードしたサーバとしか通信できません。 このことは概念としては知っていたのですが、仕様書をじっくり読んで厳密に仕様を調べてみました。 アプリをダウンロードしたサーバとは iアプリはその構成上jamファイルとjarファイル…

この日記について

この日記は自身のプログラミングの備忘録のつもりで始めた物です。 タイトルにもあるとおりjavaがメインになりますが、自分がやっているのは近年javaのメインターゲットであるサーバサイドではなく、クライアントサイドが主になっております。 最近では携帯…