Javaプログラミング学習サイト ゆるゆるプログラミング

2020/03/23 公開

・コンストラクタ

コンストラクタとは、インスタンスを生成したときに実行されるメソッドで、クラスのメンバ変数を初期化する処理などを記述します。

インスタンスは、以下のJavaソースコードのようにクラスをnewすることで生成します。

次に、コンストラクタ名の付け方のルールですが、クラス名と同じにする必要があります。以下のソースには、TestClassという名前のクラスを作り、その中に引数の違うTestClassという名前のメソッドが3つあります。これがコンストラクタです。これらのメソッドを呼び分ける方法は、newをするときの引数を変えることです。引数が一致しているメソッドコンストラクタ)が呼び出されます。

ConstructorSample.java ← クリックしてダウンロードページに移動
001:    class TestClass {
002:    	// メンバ変数
003:    	int value;
004:    
005:    	// コンストラクタ(その1)
006:    	TestClass()
007:    	{
008:    		value = 0;
009:    	}
010:    
011:    	// コンストラクタ(その2)
012:    	TestClass( int a )
013:    	{
014:    		value = a;
015:    	}
016:    
017:    	// コンストラクタ(その3)
018:    	TestClass( int a, int b )
019:    	{
020:    		value = a * b;
021:    	}
022:    
023:    	// valueの値を取得するメソッド
024:    	public int getValue()
025:     	{
026:    		return value;
027:    	}
028:    }
029:    
030:    
031:    public class ConstructorSample {
032:    	// メイン
033:    	public static void main( String[] args )
034:    	{
035:    		// コンストラクタ(その1)
036:    		TestClass cls1 = new TestClass();
037:    		System.out.println( cls1.getValue() );
038:    		
039:    		// コンストラクタ(その2)
040:    		TestClass cls2 = new TestClass( 100 );
041:    		System.out.println( cls2.getValue() );
042:    
043:    		// コンストラクタ(その3)
044:    		TestClass cls3 = new TestClass( 5, 7 );
045:    		System.out.println( cls3.getValue() );
046:    	}
047:    }

ConstructorSampleを実行

C:\talavax\javasample>java ConstructorSample

ConstructorSampleの出力結果

0
100
35

この結果から、newの仕方で呼ばれるコンストラクタが違っていることがわかります。

■関連コンテンツ

プログラムの構成(他1件) Javaのプログラム構成について解説

■新着情報

2021.06.18 変数の初期値 変数に値を代入しないで計算
2021.05.28 短針と長針の角度 短針と長針の角度は?
2021.05.19 各位(くらい)を求める 1の位の値は?10の位は?

■広告

Topへ