Почему Java не поддерживает перегрузку оператора?

Java не «нуждается» в перегрузке оператора, потому что это просто выбор, сделанный его создателями, которые хотели сохранить язык более простым. В отличие от C ++, Java не поддерживает перегрузку оператора. Каждый оператор имеет хорошее значение с его арифметической операцией, которую он выполняет. Перегрузка оператора позволяет сделать что-то дополнительное, чем ожидалось. Java допускает только арифметические операции над элементарными числовыми типами. Если вы разрешите разработчику выполнять перегрузку оператора, они будут иметь множество значений для одного и того же оператора, что сделает кривую обучения любого разработчика сложнее и что-то более запутанное и беспорядочное. Разработчики Java хотели помешать людям использовать операторов в запутанной манере, но это не стоило того. Избегая перегрузки оператора, это более прозрачно, какая функция вызывается когда.

Перегрузка оператора никогда не считалась плохой идеей на языке программирования на C ++. C ++ имеет как распределение стека, так и распределение кучи, и вы должны перегружать своих операторов для обработки всех ситуаций и не вызывать утечки памяти. Избежание перегрузки операторов в Java значительно упростило реализацию и спецификацию Java, и это вынудило разработчиков не злоупотреблять операторами. В сообществе Java были некоторые дискуссии о внедрении перегрузки операторов.

Источник: http://net-informations.com/Java/cJava/operator.htm

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 3,00 из 5)
Adblock
detector