Junior — Middle
Lehet-e ugyanazzal a névvel és paraméterekkel statikus metódust definiálni ugyanabban az osztályban?
sobes.tech MI
Válasz az MI-től
Java-ban nem lehet két ugyanazzal a névvel és ugyanazokkal a paraméterekkel rendelkező statikus módszert definiálni ugyanabban a osztályban. Ez azért van, mert a módszerek túlterhelhetők aláírás szerint (név + paraméter típusok), és azonos aláírás konfliktust okoz.
Ha megpróbálsz két ugyanazzal az aláírással rendelkező statikus módszert deklarálni, a fordító hibát ad:
public class Example {
public static void method(int a) { }
public static void method(int a) { } // Fordítási hiba: módszer duplikáció
}
Ezért a túlterhelés csak akkor lehetséges, ha a paraméterek különböznek.