それぞれの変数、メソッドについて
・インスタンス変数
各オブジェクトに関連づけされているフィールド(変数)の事を指す。
・インスタンスメソッド
各オブジェクトに関連づけされているメソッドの事を指す。
・クラス変数
クラス全体に関連づけされているフィールドの事を指す。
・クラスメソッド
クラス全体に関連づけされているメソッドの事を指す。
クラス変数定義方法
class Car {
public static int Car //クラス変数 型名の前にstaticが必要 publicは修飾子
} 型名 クラス名
クラスメソッド定義方法
class Car {
public static void show(); //クラスメソッド
メソッド名
}
Carクラスファイルを利用するプログラムでクラスメソッドshow()を呼び出す方法
Car.show();
クラスメソッドの特徴
・クラスメソッドはオブジェクトが作成されていなくても呼び出せる。
・クラスメソッド内ではインスタンス変数、インスタンスメソッドにアクセスする事はできない。
余談
メソッド内で宣言した変数はローカル変数といい、宣言したメソッド外では利用する事ができず、値を格納しているのはメソッドが終了するまで。
class Car{
int num;//ローカル変数
static int sum;//クラス変数
void setCar(int a){//ローカル変数
int a //ローカル変数
}
}