2006-05-01から1ヶ月間の記事一覧
// Eclipseがもってるやつ PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJ_FOLDER);// そのファイルのEclipse内でのアイコン? File file = ・・・ IEditorRegistry iEditReg = PlatformUI.getWorkbench().getEditorRegistry(…
JavaからXMLにアクセスする。 JDK 1.4.2 XMLにアクセスする方法として、主に2種類あるらしい。 DOM メモリ上にツリー構造で保持する。 重い。 SAX イベントで処理する。 DOMより軽い。 XMLの更新はできない。 20MくらいのXMLをDOMで操作していたら、あまりに…
FileがFDドライブかどうかを判定する方法。 Javadocを眺めてたら、FileSystemViewというのを発見したので、使ってみた。 サンプルコード。 File[] files = File.listRoots(); FileSystemView fSysView = FileSystemView.getFileSystemView(); for (File file…
Eclipseのリファクタリング機能は、ほんとすばらしい。 名前の変更、メソッドの抽出、シグニチャの変更などはよく使っている。 細かく設計しないでガツガツコードを書く性格なだけに・・・。 そんなすばらしいリファクタリング機能なんだけど、思わぬ欠点が…
前回は単なる文字列のfinalフィールドの参照だった。 今回は、参照先のfinalフィールドがメソッドを呼び出していた場合を チェックしてみる。 まず、Mainクラス。 public class Main { public static void main(String args[]) { System.out.println("A-AAA …
JavassistのCtMethodはequalsとhashCodeがオーバーライドされている。 CtMethodというからには、てっきりそのメソッドが定義されているクラスのことを意識して 結果を返してくれるのかと思いきや、実はそうではなかった。 JavadocのCtMethdo#equalsから引用 …
finalフィールドの文字列への参照は、コンパイル時に置き換えられる。 知ってはいたけど確かめたことはなかったので、改めて確認。 まずfinalフィールドを持つクラス。 public class A { public static final String ABC = "xyz"; public static void main(S…
Eclipse3.1を使い始めてから、クラスを作成したときに 設定しておいたコメントとかがデフォルトで付与されなくて まぁいっかーと放置してた。 でもよく見てみたら、クラス作成時のウィンドウで、 コメント付与するかってチェックボックスがあるじゃん。 英語…
String source; // なにかしらのXML形式の文字列 DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder(); builder.parse(new InputSource(new StringReader(source)));こんなんでいいのか?
下のようなクラスがあったとする。 public class Hogeo { private Class cls = Hogeo.class; private String class$0; }このクラス、実はコンパイルが通らない。 エラー内容は「Duplicate field Hogeo.class$0」。 class$0というフィールドが重複しているら…
今更ながらハマるとは・・・。 HashMapを使ってたけど、意図したとおりに値が取得できない。 ずーっと悩んでふとkeyとなってるクラスを見てみたら、 equalsはオーバーライドしているのにhashCodeはオーバーライドしてねぇ。 ぐはっ。 改めて、HashMapのコー…
勝手に命名した病気。自分は大学時代からこの病気にかかっている。 #Googleで1件もヒットしないんだけど、 #誰か他に違う名前つけてんのかなー? 世の中で動いているものについて、どのように動いているのかや 自分でシステムとして実装するならどうするのか…
お気軽DBのApache Derbyを、Eclipseのプラグイン版でさわってみる。 JDK:1.4.2 Eclipse:3.1.1 準備 1.インストール derby_core_plugin_10.1.2、derby_ui_plugin_1.1.0.zipをEclipseにインストール。 2.Derby化? 適当にプロジェクトを選択して、右クリ→Apa…
DOS窓がうざいツールがある。 PC起動時から動作させてずーっと使いたいので ウィンドウを見る必要ないのにうざい 貴重なタスクバー資源を使われる(2段にして使ってても邪魔) 黒い画面は怖がられる と、ちょっと困りもの。 サービスとかを活用できりゃいいん…