Java オーバーロードのサンプル

Javaのオーバーロードのサンプルです。

目次

オーバーロード

  • 1つのクラスの中で、メソッド名またはコンストラクタ名が同じで引数が異なるものです。
  • 渡す引数によって自動的に引数にあったメソッド/コンストラクタが実行されます。
  • 継承の機能で、似た名前のオーバーライドがありますがそれとは別です。オーバーロードと継承は関係ありません。
    Java オーバーライドのサンプル

メソッドのオーバーロード

メソッドのオーバーロードのサンプルです。

4,7行目は同じメソッド名です。
4行目の引数はintです。
7行目の引数は、intとStringです。
16行目の引数は数値1つです。4行目のメソッドが実行されます。
17行目の引数は数値と文字列の2つです。7行目のメソッドが実行されます。
渡す引数によって自動的に引数にあったメソッドが実行されます。

package test1;

class Color1 {
	public String getCount1(int a) {
		return a + "回目";
	}
	public String getCount1(int a,String b) {
		return a + "回目" + b;
	}
}
public class Test1 {
	public static void main(String[] args) {
				
		Color1 c1 = new Color1();		

		System.out.println(c1.getCount1(2)); //2回目
		System.out.println(c1.getCount1(2,"です")); //2回目です
	}
}

コンストラクタのオーバーロード

コンストラクタのオーバーロードのサンプルです。

6,9行目は同じコンストラクタ名です。
6行目の引数はStringです。
9行目の引数はありません。
16行目の引数は文字列1つです。6行目のコンストラクタが実行されます。
17行目の引数はありません。6行目のコンストラクタが実行されます。
渡す引数によって自動的に引数にあったコンストラクタが実行されます。

package test1;

class Color {
	String name1;
	
	Color(String name1) {
		this.name1 = name1;
	}
	Color() {
		name1="白";
	}
}
public class Test1 {
	public static void main(String[] args) {
		
		Color c2 = new Color("赤");
		System.out.println(c2.name1); //赤
				
		Color c3 = new Color();
		System.out.println(c3.name1); //白
	}
}

関連の記事

Java クラスのサンプル
Java コンストラクタのサンプル
Java クラスの継承のサンプル

 はまったらエンジニア特化型Q&Aサイト
【teratail(テラテイル)】で質問しましょう!


△上に戻る