忍者ブログ
淡々とお仕事のお勉強をするよ
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

Javaの道:クラス(6.コンストラクタ)まで。

  • メソッドの戻り型は必須。戻り値がない場合は void を指定。引数がない場合は空の括弧だけを書く。
  • 戻り型を書いてない方がコンストラクタ。 (誤解を招く書き方の見本)
  • 複数のコンストラクタは、引数の数と型で区別される。
  • コンストラクタ内で this を使う際は文の、super でスーパークラスのコンストラクタを使う際はコンストラクタの最初に持ってこないとコンパイルエラーになる。1つのコンストラクタで両方は使えない。
  • this も super も使われないときは、スーパークラスの引数なしコンストラクタが呼ばれる。this の呼び出し先も同様。明示的に継承した時はスーパークラスに引数なしコンストラクタがないとコンパイルエラーになる。全てのクラスは暗黙裡に Object クラスを継承しているので普段は問題ない。

# あれ、コンストラクタの名前ってクラスと同じじゃないと駄目 ?

PR

Javaの道:クラス(3.オブジェクト)まで。いよいよクラスとオブジェクトの世界に入門。

  • private 修飾子が付いているメソッド・変数はサブクラスから参照できない。コンストラクタも暗黙に継承されない。
  • コンパイル時に本当は this. 付きになっている。
  • ガベージコレクションは自動。
  • オブジェクト変数に null を代入することにより、オブジェクトを参照しなくなったことを VM に明示することができる。

Javaの道:数データ(4.算術演算)まで。

  • NumberFormat クラスで数字への単位やコンマの付与が便利に出来る。文字列から数字の抽出も可能 ? ロケール依存注意。明示的に設定しておいた方が無難 ?
  • String のさまざまなメソッド。String (Java Platform SE 6)

PLP さんの Grunge に変えてみました。ちょっと今時っぽく。

緑の goo のブログパーツ、Firefox からだとカウントされないのかと思ったけど 1回 = 1本ではなかっただけだったみたい。

Javaの道:文字列(2.Stringの概要、コンストラクタ)まで読んだ。

  • StringBuffer は後で変更できる。String は便利。
  • String クラスは、便利コンストラクタを使う時以外は new せずに String example = "this is example."; と生成するとメモリ領域的に効率がよい。

Javaの道:配列(2.配列のコピー)まで読む。Java らしい話もそうでない話も。

  • ^ で XOR 演算。
  • 配列も new。
  • length 属性で長さを取得できる。
  • clone メソッドで配列をコピー。オブジェクト型なのでキャストする必要がある。
  • System.arraycopy でリンク元・コピー始点・リンク先・コピー始点・コピーする要素数を指定してコピーすることも出来る。
  • shallow コピーと deep コピー。clone も arraycopy も shallow なので注意。

ラッパークラスの鬱陶しさは解決できないけど。

アトミッククラスはどちらかというと不可分操作の実装という観点で重要なのであり、ラッパークラスがうざいという理由で使うのは良くない (し、さほど便利でもない) みたい。実際、マルチスレッドプログラミング関連っぽい話題がちらほら見えた。

  • 生成時に < 型 > でコンパイラが型をチェックしてくれるようになる。取り出し時のキャストも要らない。 (1.5 以降から)
  • java.util.Collection系とは前述の可変長配列に使う ArrayList や Vector のことか。 (参考: Collection (Java 2 プラットフォーム SE v1.4.0))
忍者ブログ [PR]


Designed by A.com
カレンダー
10 2024/11 12
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
フリーエリア
最新TB
バーコード
ブログ内検索
アクセス解析
プロフィール
HN:
tnmt
性別:
非公開
(image created by E-Mail Icon Generator)