26.1.5.6 オーバーローディング

同じメソッド名で複数の使い方をすることをオーバーローディング(overloading)といいます.「使い方」は パラメータの個数と型とで示します.charsの例では パラメータが2個のもの(「何を」,「何個」)と1個のもの(星印を「何個」)で異なっていたわけです.さらに, パラメータが1個でも(「何を」1個)というようなcharsを定義しても構いません.

static void chars(char ch){
      System.out.print(ch);
  }

要するに,メソッド名とパラメータの型(の並び)がすべて同じでなければ,別のものとして認められる訳です.ここで仮 パラメータ名は考慮されないことにして注意して下さい.ここでの例では,「使い方」は

chars(char, int)

chars(int)

chars(char)

の3種ですから,すべて同時に定義しても構いません.また,chars(char)を定義するのに chars(char, int)を使って

static void chars(char ch){
   chars(ch, 1);
 }

と書いても構いません.