Перегрузка функций



Если у вас есть несколько функций с одним и тем же именем, но они принимают разные типы, то будет вызван тот что больше всего подходит.



Перегрузка позволяет нам менять поведение функции в зависимости от типа или кол-ва параметров, которые мы получили.



Самой простой пример — System.out.println(). Если вы посмотрите определение метода, то увидите что он принимает и String, и char, и int.