2008/04/02

変数について~クラス型変数とな?~ [ Java ]

昨日の続き、今度はJavaにおけるクラス型変数って奴について。
まぁ実は書いてる僕がそろそろ意味不明になってきてるんですが
気にせずスタートするとします。

さてではクラス型変数とは何かというと、クラス型変数はプリミティブ型
とは違い、オブジェクトです
その為、昨日の例のように使用する前にインスタンス化をしなければいけません。

プリミティブ型の場合は int i = 1; のように直接値を書き込める所、クラス型の
場合はオブジェクトを生成した後に値をセットしないといけません。
また、クラス型の場合は当然といえば当然ですがメソッドを持ちます。
例えば、

long l = integer.longValue();

こんな感じ。上記の例だと変数integer(クラス型変数)が中にint型(プリミティブ型)の
変数をlongValue()というメソッドでlong型にキャストして値を返しています。


こんな感じです。つまりクラス型変数って、事前にJavaで用意されているクラスを
使ってるだけなのかなぁ?勿論無いと不便なんですけど・・・・・・
とりあえずここで一旦クラス型変数のまとめ。

・クラス型変数はオブジェクトである
・クラス型変数はオブジェクトなので、インスタンス化の後に値をセットする必要がある
 (↑大体コンストラクタでセットするのかな)


さて、ここで話は終了……と思ってたのですが、↑の文章を良く読むとクラス型変数の
場合オブジェクトを宣言はしてもインスタンス化しない、つまり

Integer height;

こんな所で終了するとこれってどうなるんでしょう?
これまた飽きてきたのでまた別トピックで書くとします。

1 件のコメント:

maito さんのコメント...

オライリーの件は、表紙のことだったんだね^-^

>こんな所で終了するとこれってどうなるんでしょう?

エラーが発生する!!