- いままでインスタンスを作成する場合,Cのmalloc等と同様に,
a = new ClassName()
としてきた.- インスタンスを作成するときに呼ぶクラス名と同じ名前のメソッドをコンストラクタと呼ぶ.
- 実はコンストラクタは自分でも再定義できる.例えば,前述のガソリンスタンドの例の場合,
public class GasStation { int unitPrice; int sales; int remain; GasStation(){ unitPrice=100; sales=0; remain=1000; } GasStation(int u, int s, int r){ unitPrice=u; sales=s; remain=r; } // 以下,略.のようすることで,別途,初期化メソッドを呼ばなくても,
gs1=new GasStation(105, 0, 100); gs2=new GasStation(); // 初期値が100, 0, 1000 がデフォルトになる.のように使える.ちょうど、C言語で 関数名(引数の列) などと指示して「呼び出す」ことと同じような感覚である。
2003年10月1日 11:33 更新