Java
 Computer >> コンピューター >  >> プログラミング >> Java

Javaでのメソッドのオーバーロードと型の昇格


メソッドのオーバーロードは、同じ名前の複数のメソッドを作成して、異なるタイプのパラメーターに対して同様のアクションを実行するのに役立ちます。

変数が類似したタイプの場合は、タイププロモーションを使用できます。タイププロモーションは、低い範囲の値を高い範囲の値に自動的にプロモートします。たとえば、バイト変数をint変数に割り当てることができます。ここで、バイト変数はintに型昇格されます。バイト、ショート、または整数の2つの数値を追加する場合は、単一のメソッドを使用できます。以下の例を参照してください-

public class Tester {
   public static void main(String args[]) {
      Tester tester = new Tester();
      byte a = 1, b= 2;
      short c = 1, d = 2;
      int e = 1, f = 2;
      System.out.println(tester.add(a, b));
      System.out.println(tester.add(c, d));
      System.out.println(tester.add(e, f));
   }
   public int add(int a, int b) {
      return a + b;
   }
}

出力

3
3
3

  1. Javaでのメソッドのオーバーロード

    メソッドのオーバーロードは、静的ポリモーフィズムの一種です。メソッドのオーバーロードでは、同じ名前で異なるパラメーターを使用して複数のメソッドを定義できます。次のサンプルプログラムについて考えてみます。 例 public class Tester {    public static void main(String args[]) {       Tester tester = new Tester();       System.out.println(tester.add(1, 2));   &nb

  2. Javaの共変リターンタイプとは何ですか?

    一般に、オーバーライドでは、スーパークラスとサブクラスのメソッドは同じ名前とパラメーターを持ちます。ただし、型を返す場合、サブクラスのメソッドは、スーパークラスのメソッドの戻り型のサブタイプを返すことができます。 例 次の例を見ると、スーパークラスには demoMethod()という名前のメソッドがあります タイプリストの値を返します。このメソッドをオーバーライドすると、サブクラスのメソッドはリストタイプの値を返すことができます。 (スーパークラスにあります)または、リストのサブタイプを返すこともできます (スーパークラスのメソッドの戻り型)ArrayList、Stack、Vectorなど