Я хочу понять, , почему Разработчики Java решили реализовать объявления функций таким образом.Я часто слышал, как говорят, что разработчики Java хотели избежать неудачного выбора дизайна, сделанного на других языках (например, C ++) - множественное наследование через классы и перегрузка операторов приходят кразум - чтобы сохранить объектно-ориентированную модель как можно более простой и поощрять хорошие методы программирования.Это правда в этом случае?Является ли эта функция слишком дорогой для реализации по сравнению с (по общему признанию, предельной) выгодой, которую она обеспечивает?
Дело в том, что я не вижу (и я все еще учусь,так что это, вероятно, означает приседание!: D) значительные накладные расходы на реализацию пропуска формальных имен параметров в объявлениях функций.И я могу вспомнить, по крайней мере, один пример, где эта функция не может повредить: определение абстрактных функций.
В любом случае, рад услышать некоторые мысли от людей на SO.Кстати, соответствующий раздел (8.4.1) Спецификации языка Java объясняет что , но не говорит о почему .
РЕДАКТИРОВАТЬ: Добавление фрагмента кода:
abstract void someFunc(int, int, int);
(я использую абстрактную функцию, так как это один простой случай, я могу подумать, где эта функция будет полезна).