インスタンスオブジェクトの作成 基本型とクラス型の変数と配列の比較

●基本型
int num;//宣言 ※int型の変数を用意
num = new int();//初期化 ※1コンストラクタの呼び出しの部分

num = 1;//代入

int num = 1;//短縮
宣言・初期化・代入をまとめられる

基本型は、newによるオブジェクトの作成は不要(できない)。

※1基本型は、メゾット(プログラムにおいての指示そのもの)は無く、フィールド(数値)しか持っていない。コンストラクタは、メゾットの一つである為、コンストラクタの呼び出しは出来ない。結果的にnewによるインスタンスの作成は、行うことができない。よって、この様に記述するとコンパイルできない。

 


●基本型の配列
int num;//宣言【要素の宣言】※int型の配列を用意
num = new int[2];//初期化【要素の確保】※引数分のコンストラクタを呼び出し

num[0] = 1;//代入

int num = new int[i];//短縮
宣言【要素の宣言】・初期化【要素の確保】をまとめられる。
代入はまとめられない。

 


●クラス型の変数
Car num;//宣言 ※Car型の変数を用意
num = new Car();//初期化 ※コンストラクタを呼び出し

 

gas = 40.5;//代入

num = new Car(4597,40.5);//代入 ※コンストラクタで代入
num.set();//代入 ※インスタンスオブジェクトを使用して代入

Car num = new car(引数);//短縮
宣言・初期化・代入をまとめられる。

 


●クラス型の配列
Car num;//宣言【要素の宣言】※int型の配列を用意
num = new Car[2];//初期化【要素の確保】※引数分のコンストラクタを呼び出し

num[0] = new Car();//代入

Car num = new Car[2];//短縮
宣言【要素の宣言】・初期化【要素の確保】をまとめられる。
代入はまとめられない。


【まとめ】
クラス変数(配列)宣言→クラス配列の要素の確保→

クラス変数(配列)の初期化(コンストラクタの呼び出し)

------ここで、インスタンスオブジェクトの作成完了-------

→数値の代入

を考えながらコードを記述していく。