Перегрузка методов по параметрам
Почему можно написать так
class A {
public int foo(int i) {
return 0;
}
public int foo(double l) {
int z = abs(2);
return 0;
}
}
но нельзя так
class A {
public void foo(int i) {}
public void foo(double l) {
int z = abs(2);
}
}
Источник: Stack Overflow на русском