Android スマートフォン 用語

オーバーロード(overload)
オーバーロードとは、同じ名前のメソッドを定義することです。多重定義ともいいます。

Javaでは同じ名前のメソッドが複数あるとJava仮想マシンが混乱してしまうため、メソッドに同じ名前をつけることは基本的にはできません。しかし、例外的に仮引数の数または型が異なれば同じ名前のメソッドを複数定義することができます。



  オーバーロード(引数の型が異なる場合)の例

public class Main {
  public static int over ( int a , int b ){ ← overメソッド @
    return a + b ;
  }
  public static double over ( double a , double b ){ ← overメソッド A
    return a + b ;
  }
  public static String over ( String a , String b ){ ← overメソッド B
    return a + b ;
  }
  public static void main ( String[ ] args ) {
    System.out.println( over ( 5 , 10 ) ) ; ← overメソッド@ の呼び出し
    System.out.println( over ( 1.5 , 8.2 ) ) ; ← overメソッドA の呼び出し
    System.out.println( over ( "これが" , "オーバーロード" ) ) ; ← overメソッドB の呼び出し
  }


実行結果

15
9.7
これがオーバーロード

各メソッドの仮引数は、メソッド@では「 int 」、メソッドAでは「 double 」、メソッドBでは「 String 」と異なっているので、正確に呼び出してくれる。




  オーバーロード(引数の数が異なる場合)の例

public class Main {
  public static int over ( int a , int b ){ ← overメソッド @
    return a + b ;
  }
  public static double over ( int a , int b , int c ){ ← overメソッド A
    return a + b + c ;
  public static void main ( String[ ] args ) {
    System.out.println( "引数2つの合計は" + over( 10 , 20 ) ) ; ← overメソッド@ の呼び出し
    System.out.println( "引数3つの合計は" + over( 10 , 20 , 30 ) ) ; ← overメソッド@ の呼び出し
  }


実行結果

引数2つの合計は30
引数2つの合計は60

仮引数の数の違いで識別され、正確に呼び出してくれる。











ひとり言アドバイス

アプリ 用語 単語