Java

ECJ (Eclipse Compiler for Java) とjavacでimport文の処理が違う

タイトル通りだけど、「Eclipseだとコンパイルエラーが出ないのに、なぜかGradleだとコンパイルエラーになる」という状況にハマったので、メモ。 サンプルコード 1. 下記のようなシンプルなコードを作成して、helloworld.jarを作成する。 package helloworld…

JavaのMapを簡単に使えるようにした

追記: これ、ダメだ。。。Foo.map(...).put(...).put(...) だとエラーになる... orzJavaのMapはリテラルが無いので、Map作るのが面倒! Map map = new HashMap(); map.put("java", "('A`)"); map.put("ruby", "(´∀`)"); map.put("python", "(`・ω・´)");ma…

Ubuntu 12.04 にGradle 1.2 をインストールする

備忘録。 参考にしたページ How to install Gradle on Ubuntu 10.10 http://www.code-republic.com/?p=48 インストール手順 Gradle のページからファイルをダウンロードする。 $ wget http://services.gradle.org/distributions/gradle-1.2-all.zip解凍する…

卒業研究でテスト駆動開発(TDD)を研究してると聞いて

TLで面白いつぶやきを見つけた。 window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createElement(s); js.id = id; js.src = "https://platform.twi…

TCPサーバで受信した結果をWeb上に表示する

ネットワークの初歩であるTCPサーバをPythonで書いてみて、その結果をブラウザ上で表示してみた。 参考にしたページ Python/Snippet/ネットワーク – アクセンスのおまけ TECH BEAT!! 3.0: PythonならCGIの動くWebサーバが3行で書ける!? ソース server.py …

タグ付け出来る辞書をTDDで書いてみた。

TDDの練習として、ふと閃いた「タグ付け出来る辞書」を作ってみました。 仕様 細かい事は決めていなかったのですが、下記のようなのをイメージ。 Gmailのタグ付けのように、あるデータに対して複数のタグを付けられる タグは後から変更(追加・削除)出来る …

オーバーロードの挙動を調べてみた

きっかけは@kimurayaさんのつぶやき @kimuraya オーバーロードメソッドの呼び出しの判断材料になるのは、オブジェクトの型ではなく、参照変数の型。オーバーライドメソッドの呼び出しは、オブジェクトの型に基づいて、実行時に行われるが、オーバーロードメ…

Propertiesをnative2asciiを使わずに使用するアスペクト

Javaを触ったことがある人ならpropertiesを1度や2度触ったことがあると思います。 設定ファイルを書いて、 native2ascii prop_jp.properties prop.propertiesとか毎回やる訳です。 これ面倒だよなぁと調べてみたら、Java SE 6からはnative2asciiを使用しな…