本日のエントリーはJava Advent Calendarの25日目です。昨日は @mike_neck さんのmike、mikeなるままに…: hamcrestを拡張してmoreThanとか作ってみたでした。本日はクリスマスですが、Advent Calendarはまだまだ続きます。明日はt.ogisawaさんのhttp://webinter.sakura.ne.jp/pbd/210です。 さて、今年はJava7がリリースされましたね。try-with-resources、diamond operator、invoke dynamic、Folk/Join framework…魅力的な新機能の数々が、多くの人によって紹介されています。が、Java7の変更はそれだけじゃないはず。小粒だが、キラリと光る変更がきっとあるはず。ということで、Java6とJava7のsrc.zipを比較してみました。小
S-JIS[2008-07-07/2024-03-23] 変更履歴 Java新機能(Javaの変更点) Javaのバージョンによる変更点。 JDK1.4 [/2013-12-20] JDK1.5 [/2019-12-08] JDK1.6 [/2017-06-10] JDK1.7 [/2017-09-30] JDK1.8 [/2022-10-22] JDK9 [/2021-03-21] JDK10 [/2018-06-02] JDK11 [2018-10-01] JDK12 [/2020-09-29] JDK13 [2019-09-22] JDK14 [/2021-03-16] JDK15 [/2020-11-08] JDK16 [2021-03-21] JDK17 [2021-09-19] JDK18 [2022-03-23] JDK19 [2023-09-23] JDK20 [2023-
JUnit でどうにか private なんかのメソッドをテストできないもんかなぁ・・・と思って調べたら、リフレクションを駆使することで手間はかかるもののできることが判った。 こんな感じ。 try { Method method = Foo.class.getDeclaredMethod("convert", String.class); method.setAccessible(true); assertEquals("output-string", method.invoke(new Foo(), "input-string")); } catch (InvocationTargetException e) { throw e.getCause(); } catch (Throwable e) { fail(e.toString()); } しかし、さすがに毎回これを書くのはちょっと冗
Javaのjava.lang.reflectパッケージを使用すると、文字列からクラスのメソッドを実行することができる。 例えばDBから取得したカラムをフィールドに持つBeanクラスなんかを作成して、(データファイルやHTTPリクエストからの)パラメータをフィールド名を合わせておけば、いちいち hoge.set***(request.getParameter("param")); とか書かなくても、マッピング個所を自動生成させたりとか出来る。 (そんなことをわざわざ実装する人がいるとも思えないが) iBATISや、WebアプリケーションフレームワークのStrutsなんかで利用されてたりする。 実際の開発者がこの方法を使うときってあまりないような気もする。 もし使うなら、ListやMapに格納された項目を、同じような項目名や、命名規則があるようなメソッドに対して、判断処理をさせずに設定したりす
先日のClassクラスのnewInstance()は動的なインスタンス生成を実現したわけだけども、どうせなら動的に生成したインスタンスのメソッドを動的にinvokeしたい。 それを実現するのがjava.lang.reflect.Methodクラス。 ではここで、以下のようなa1メソッドを様々な引数でオーバーロードしたTestクラスを考える。 package a; public class Test { public void a1(){ System.out.println("I'm method a1()"); } public void a1(int a){ System.out.println("I'm method a1(int a))"); System.out.println("a = " + a); } public void a1(int a, Object b){ Sys
Infomation 当サイト「GIMP初めの一歩」は、 無料グラフィック編集・加工ソフトウェア「GIMP」の 基本操作説明など、初心者向けのGIMPビギナーズサイトです。 自分のサイト・ブログの画像を自作したかったけど イマイチGIMPの使い方が解らない・・・とか とにかく、これからGIMPを始めようとしている 沢山の方々のご参考になればと思います。 News & Update
Illustratorのようなベクターデータを編集する「ドローソフト」のひとつとして、「Inkscape(インクスケープ)」があります。UNIX由来のソフトで、無償で利用できるのがありがたい。 そろそろ年賀状を作らないと、と思ってInkscapeを入れてみたら、これはIllustratorなしでもかなりいけそうな感触。皆さん使ってみては、と思って紹介します。 自分の環境がMac OS XなのでMac主体で書いていますが、ダウンロードとインストール、初めて使う人向けの解説(チュートリアル)はWindowsでも大丈夫な記事へリンクしています。 ダウンロード Inkscape. Draw Freely. うへー英語だーと思ったあなたでも、右上の「↓Download Now!」をクリックすれば大丈夫。 インストールと実用的なチュートリアル Macでは、X11をインストールしてからInkscapeを
ネガティブ思考に陥ってしまった、、、でも世の中の「自己啓発本」はたいていの本が「ポジティブに考えよう」の一言で片づけようとしています。でも・・それができないから辛いのですよね。ポジティブになれないから、困っているのですよね。とてもよくわかります。 そこで今日は、そんなあなたにネガティブ思考を撃退し、気持ちが上向く方法をお伝えします!ではご覧ください。 ポジティブ、ネガティブで分類しない「意識をすると、突然表面化する・・」という現象が人には多々あります。 告白された途端にその人の事が気になるようになった、不安な事を指摘された途端に、うまくいかないかもしれないとリスクを考え始めた等。人の脳には、「意識したら、表面化する」法則がどうやら働くらしいのです。 つまり・・自分の中で湧き上がってくる感情に、〇(ポジティブ)×(ネガティブ)の分類をしなければいいのです。それに捉われてしまわないように。 た
ちょっとした便利な使い方などを紹介します。ただし、「CentOS 5」本来の使い方以外の内容を含んでいる場合がありますので、自己責任でご利用ください。 ■Tip-01 起動時に「Num Lock」を自動的にONにするには デスクトップパソコンの場合には、システム起動時にテンキーの数字入力が可能な状態(「Num Lock」キーを押した状態)になっていると便利です。 起動時に「Num Lock」を自動的にONにするには、numlockxパッケージをインストールします。 http://rpm.pbone.net/からnumlockx-1.0-11.fc6.i386.rpm(Fedora Core 6用)をダウンロードしてインストールします。 次回の起動時から「numlockx」プログラムが実行され、「Num Lock」が自動的にONになります。 ■Tip-02 ディストリビューションやカーネルの
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く