タグ

Javaに関するCherenkovのブックマーク (50)

  • Javaでprivateなインスタンス変数にアクセスする方法

    よくJUnitなどを使ってテストのテストケースでprivate変数の値をテストしたい場合があるけど、テストのためにクラス設計を変更するはあんましよくないし、回りまわって得られた結果でおkとするのもめんどくさいと思うことがよくあります。 そんなときはアクセス権を動的に変更して、private変数に直接アクセスしちゃいましょう! こちらを参考にしました。 クラス Field リフレクションの学習 サンプルコード: // Test.java public class Test { public static main(String[] args) { PrivateVariable pv = new PrivateVariable(); // System.out.print(pv.himitu); // ↑このコードはprivateの変数を呼び出してるのでコンパイルエラー Field fiel

  • 楽しいJava入門

    「読み物Java(基礎編)」は初心者向けです。さーっと読み進めてください。「合格Java(基礎編)」でSunのJava2認定試験(310-035)向けの模試の問題を少しずつ増やしていきますので、細かい文法はこちらでチェックしてください。 「読み物Java(ライブラリ編)」は標準ライブラリの中からよく使われるクラスを紹介していきます。

  • 中途半端に知識だけある素人プログラマを相手にしている場合ではない件について - なんたらノート第三期ベータ

    中途半端に優秀なプログラマが「正しいプログラミングテクニック」だと妄信しがちな3つポイント - 分裂勘違い君劇場 が流行ってるみたいなので参戦。 なんだか、「中途半端に優秀なプログラマ」を相手にしているというより、「中途半端に知識だけある素人プログラマ」に対して投げられているように感じました。まあ、ノンプログラマーから見れば、「知識だけある素人」と「優秀」の違いを見極めるのは困難だという意味で、皮肉を込めて「優秀」と言ってるのかもしれないけど。 で、これをきっかけに大きく寄り道、って感じで。細かいこといろいろ考えました。 変数のスコープは狭いほど良い 広いスコープからアクセスできるようにした方が正しいケースの代表的な例は、標準入出力ストリーム(stdinやstdout)がバインドされたグローバル変数の形で実装されているシステム変数や、Rubyのprintやpメソッドだろう。(この点、Jav

    中途半端に知識だけある素人プログラマを相手にしている場合ではない件について - なんたらノート第三期ベータ
    Cherenkov
    Cherenkov 2009/02/15
    System.out.println
  • 楽しいJava入門

    パソコンの画面に向かっていると、目が疲れ頭も疲れ果て、肩がこったりします。意外と気付かないのが、マウスやキーボード操作による手から腕の疲れです。気をつけましょう。 クラスメソッドやクラス変数は、クラス名を頭に指定するのでしたね。それにしてもこのいくつもの「String」や「Math」をどうにかしたい..そこで登場するのが「import static」です。ただのimportではありません。クラスメソッドやクラス変数をあらかじめフルネームの形で指定しておくと、プログラム中で、頭のクラス名を省略することができるのです。 ここで使われているクラスメソッドとクラス変数は次の通りです。 クラスメソッド String.valueOf Math.abs   Math.ceil   Math.sqrt クラス変数      Math.PI Math.E これらをすべて、「import static」に指定

    Cherenkov
    Cherenkov 2009/02/15
    「import」はクラス名をフルネームで指定しなくてもいいようにするため。「import static」はクラス変数やクラスメソッドを、クラス名をくっつけて指定しなくてもいいようにするため。
  • System.out.printlnがめんどくさい - Rso's Jotter

    Javaで標準出力に何かメッセージをたくさん表示するとき System.out.println("something");何かしらでこの関数はよく使われてるけど微妙に文字数が多くてだるい. そんなときはSystem.outをstaticインポートしてやれば import static java.lang.System.out; out.println("something");と書けるので,煩わしさが1/3ほど減少するかもしれない 追記 Eclipseを使ってれば,sysoとタイプしてから補完(ALT+'/')ででも出る. こっちの方が実用的か さらに追記 Groovyを導入してやれば println "something"でどこでも出力できる Groovy導入のコストが高いかもしれないけど

    System.out.printlnがめんどくさい - Rso's Jotter
    Cherenkov
    Cherenkov 2009/02/15
    System.out.println/ import static java.lang.System.out
  • http://www.nextindex.net/java/app/System.html

  • Japanese - The Joel on Software Translation Project

    カリフォルニア 2007年10月5日 FogBugz On Demand 2007年7月9日 マネジメントの 2007年6月29日 記憶に残るようなカスタマサービスへの7ステップ 2007年2月19日 ファウンダーズ アット ワーク 2007年1月30日 Copilot 2.0リリース! 2007年1月26日 ビッグピクチャー 2007年1月21日 新年の抱負: もっといい仕事につくこと! 2006年12月20日 50万件のバグ! 2006年12月20日 新作! 2006年12月18日 エレガンス 2006年12月15日 人々がソフトウェアをいじるのは、多くの場合、それで遊びたくてそうしているわけではない。彼らがソフトウェアを使うのはツールとしてであり、それで彼らがやりたいと思う別なことを実現するのだ。彼らがチャットプログラムを使うのは、それでウィットがあるところを見せて、チャットの

    Cherenkov
    Cherenkov 2009/02/01
    ソフトウェアマネージメント システム開発 悪夢
  • Yamashiro0217の日記

    特に非エンジニア向けに書く。 プログラマー仕事はエディタに向かうことではない。 「お前は何を言っているんだ?」 まぁ、待って欲しい。説明する。 「将棋指しの仕事は駒を動かすことだ」 ?おかしいですよね。将棋指しの仕事は駒を「どう」動かすか考えることだ。 実際にレベルの高い将棋指し同士は、盤面が無くても脳内だけで試合ができる。 もちろん、プログラミングを実際に行なわないとコンピューターは動かない。 さらに例える。 プログラミング作業におけるコードをコンピューターに打つという作業は、 将棋指しが駒を動かす。というのに近い。 ただし、場合によっては駒の重さが30kgぐらいある。 どんだけ優れた将棋指しでも、30kgの駒を100回とか動かしたら、 疲れて頭回らなくて素人にも負けてしまうかもしれない。 30kgもある駒を動かすのは大変だ。 だからプログラマーはエディタ工夫したり、 開発環境工夫した

    Yamashiro0217の日記
  • 僕はやっぱりJavaを推したいんだけれど - 簡潔なQ

    はてなダイアリーに対して。 文章から何を得るかは読み手の自由だと思うけど、僕が言いたかった内容がことごとく無視されると悲しいものがあるなあ。 Javaがおすすめというのもすごく気で言ってるんだけれど、ここまでしつこく薦めてもtazantが全く無視するのは、彼なりに経験則でC++で勉強したほうが効率がいいとする何かがあるんだと思うけど。 ただ、 設計ができれば、コードは書けるので、利用するのも自然とできることでしょう。C++標準ライブラリはあまり意識していませんので、自分で設計して、コードを作ることで、利用することも分かっていくことでしょう。 ということで、デザインパターンを学んでいるのですが、設計・実装例・利用法なども書かれているので前提知識としては十分でしょう。 はてなダイアリー ここは僕の考え方とは真っ向から対立するので、いろいろ考えてみたい。 (考えてみたいと言っても、思ったままに

    僕はやっぱりJavaを推したいんだけれど - 簡潔なQ
  • MergeDoc Project

    Cherenkov
    Cherenkov 2008/12/16
    EclipseでJavaをはじめるために必要な環境が全て揃ったパッケージを配布している素晴らしいサイト。