[プログラム]
Java学習にあたって
技術書籍というものは、書いている内容により想定している「読者」があります。
世間で評価の高い本でも、読者のレベルはよっては良い本になるとはいえません。
プログラム言語経験が無い場合は、Javaをコーディングするにあたって必要な情報が、
網羅されていない本でも構いません。
書店などでざっと内容を見て、とにかく読んでなにが書いてあるのか分かるものを選んでください。
基本
コーディング
コーディング時のクラス、メソッドの命名の慣習
言語として間違いでは無いが、従って書いたほうが良いもの
http://java.sun.com/docs/codeconv/
他、所属したプロジェクトなどで規定があれば、それに従う。
読み方
{}波括弧、ブレース
インデントの意味
Javaに限らず、プログラム初心者にありがちなのが、インデントをちゃんとつけない事。
インデントには見やすくする以外に、変数のスコープ(有効範囲)を明確にする。
変数のスコープ
Javaは基本で出来ているので、クラスの変数であるメンバ変数とメソッドで定義されるメンバ変数(javadocではフィールドと書かれる)とに分かれる。
基本的に宣言をされた{から}までの範囲で有効となる。
なのでスコープが分かれていれば同じ名前の変数を定義することもできる。
メンバ変数には修飾子による
演算子でやっかいなもの
アプレット
アプレットでウインドウサイズにアプレットサイズを追従する方法
http://javatec.blog105.fc2.com/blog-entry-48.html
但し、appletviewerではwidthとheightを%指定では認識してくれない。
Javaで便利なエディタ
クリムゾンエディタ
http://www.crimsoneditor.com/
最新版はv3.7だが、日本語パッチを提供してくれるサイトが3.6までなので、
ツールに慣れるまでは日本語のv3.6で良いと思う。
日本語化(v3.6用)
http://web.archive.org/web/20080219155028/http://www.kawachi.zaq.ne.jp/goemon/patch_room/archives/souko/cedt3.60JP.cab
本家は消えているが、webarchiveで取得可能
とてもためになるサイト
基本
http://nextindex.jp/java/memberVar.html
もうすこし、へぇ〜な機能等
http://www.atmarkit.co.jp/fjava/column/andoh/andoh32.html
デザインパターン
http://www.nurs.or.jp/~sug/soft/java/java32.htm
SJC-P受験情報
http://home.b-star.jp/~nagaz/ex-other/ex-sjcp5.html
この本ほしいなぁ
http://shikaku.impress.co.jp/book/m_java2_p5.htm
浅いコピーと深いコピー
http://www.syboos.jp/java/doc/object-clone-deep-copy.html
http://omoshiro-joho.com/tech-center/tips/tips_200501081430.html
ツール
JDKのツールたち
クラスファイルを読む
javap クラス名
どんなメソッドや、メンバーもっているかはパッとわかる便利
JavaScriptの実行
jrunscript
JavaDoc
Androidのソースからdoc作りたいけどめんどくさい
http://java.sun.com/j2se/1.3/ja/docs/ja/tooldocs/win32/javadoc.html#documentingpackages
jad
http://web.archive.org/web/20080214075546/http://www.kpdus.com/jad.html#download
クラスファイルから.javaファイルを作成できる。
javacなどが暗黙で行っている事が良くわかる。
Javaで遊ぶ
MP3再生の参考サイト
http://labs.unoh.net/2007/11/javamp3.html
画像保存
参考サイト
SJCP認定ガイド並みに細かい事や疑問に感じる事が書いてあります。
http://www.ne.jp/asahi/hishidama/home/tech/java/index.html
http://allabout.co.jp/gm/gc/80729/4/
スニペット
Excel形式のCSVをカンマで分解して読むコード
// CSVの一行にみなすデータ hello,good,mike,"125","245,523" String line = "hello,good,mike,\"125\",\"245,523\""; // Excelの出力するCSVの1セルにマッチする正規表現 Pattern p = Pattern.compile("((\"[^\"]*(?:\"\"[^\"]*)*\"|[^,]*),?)"); // マッチさせる Matcher m = p.matcher(line); // グローバルマッチングを使うには、findがfalseになるまで繰り返す。 // するとCSV一行にあるセルをすべて取得できる。 while(m.find()) { //System.out.println(m.groupCount()); System.out.println(m.group(2)); }
文字コードエンコード
残念ながら文字コード判定の機能はないみたい。
// 文字のエンコード、Shift_JISで出力 Charset charset = Charset.forName("Shift_JIS"); String str = "はろー、わーるど!"; CharsetDecoder decoder = charset.newDecoder(); ByteBuffer bb1; CharBuffer cb = null; System.out.println( decoder.decode(ByteBuffer.wrap( str.getBytes() ) ));
最終更新時間:2012年05月21日 11時15分04秒