Zwei Methoden sind überladen, wenn sie den gleichen Namen haben, aber die Anzahl und der Typ ihrer Parameter unterschiedlich ist. Der Compiler wird die Parameter bei einem Methodenaufruf untersuchen und die Methode wählen, die mit der Parameterliste übereinstimmt.
Es wäre nützlich eine Methode zu haben, die das Maximum eines Arrays von double
findet.
Hier ist der Beginn dieser Methode:
class ArrayOps { public static int findMax( int[] x ) { int max = x[0]; for ( int index=0; index < x.length; index++ ) if ( x[index] > max ) max = x[index] ; return max ; } public static findMax( ) { max = x[0]; for ( int index=0; index < x.length; index++ ) if ( x[index] > max ) max = x[index] ; return max ; } } public class ArrayDemo { public static void main ( String[] args ) { int[] arI = { -20, 19, 1, 5, -1, 27, 19, 5 } ; double[] arF = { 2.1, -4.0, 13.2, 21.95, -6.3, 3.28, 6.0, 0.5 } ; System.out.println("Das erste Maximum ist: " + ArrayOps.findMax( arI ) ); System.out.println("Das zweite Maximum ist: " + ArrayOps.findMax( arF ) ); } }
Wir füllen die Lücken aus, so dass der zweite Aufruf mit der zweiten findMax()
Methode übereinstimmt.