Java

OutOfMemoryError を分析する

最近仕事で Java ばかりの KrdLab です.そんな中,Eclipse の Memory Analyzer (MAT) が素晴らしかったので紹介. http://www.eclipse.org/mat/ はじめに Java ではメモリリークによって OutOfMemoryError (OOME) が発生する.このリークを特定する作業はな…

Client Property は使ってもよいのか?

JDK1.6 update 11 にて.Swing の JTable で CellEditor の細かい制御をしようとしたとき,以下のようなプロパティを見つけた. // FocusLost のタイミングで CellEditor を閉じる table.putClientProperty("terminateEditOnFocusLost", Boolean.TRUE); // J…

ant.jar を使って tar を zip みたいに操作したかったんだけど

結局 tar コマンドを使うことになりましたよ,という話. (※ tar でローカルに展開し,個々のファイルを FileInputStream として取得した) zip の場合 以下のように,エントリ名から InputStream を取得できる. final ZipEntry entry = zip.getEntry(name);…

今日のコード(2)

/** * 指定された型にキャスト可能なフィールドを集める. * * @param klass * 結果として返してほしい型のClass * * @return 集まったフィールドの配列 */ private <T> T[] collectFields(Class<T> klass) { List<T> objs = new ArrayList<T>(); for (Field f : getClas</t></t></t></t>…

今日のコード(1)

/** * 深さ優先でファイルとフォルダの配列を返す. * * @param root * 基点フォルダ(returnに含まれる) * @return ファイルとフォルダの配列 */ private File[] walk(File root) { List<File> list = new ArrayList<File>(); list.add(root); if (root.isDirectory())</file></file>…

JTable でセルのないところに行っぽい表示を出せますか?

のようなことを,先週末ぐらいにきかれて「できるんじゃないですかね?」と答えて作ってみた. 意外にサクッと作れた.Swing ってうまくできてますね. 普通の JTable + JScrollPane こんな感じになると思います. 普通の JTable + カスタマイズした JViewpo…

Java 6 から導入されたスクリプトAPIを利用する

最近,業務で Java を頻繁に使うようになりました(私は社会人1年目のぺえぺえです). いろいろ調べていたら,Java 6 から Script API が導入されたことを知りました.へぇ〜. ScriptEngineを使う Oracle Technology Network for Java Developers Oracle T…

数値+オブジェクト

最近,Javaの勉強を始めました.そしたら,少し気になることが...Javaのプリミティブ型(言い方あってるかな?)は,オブジェクトではありません. なのに, int n = 1; String s = n + "hoge"; とかできます. オブジェクトではないのにこんなことができ…