Перегрузка (метод выбора перезагрузки):
Java позволяет нескольким методам иметь одинаковое имя, но когда имена одинаковы, должны быть включены различные параметры. , Ошибки времени компиляции будут происходить без сопоставления параметров или поиска нескольких возможных совпадений.
Перегрузка включает в себя: перегрузка обычных методов и перегрузка методов конструктора
Метод: то есть функция (которую мы коллективно называем в тексте «Метод»), представляет собой фиксированный сегмент программы или подпрограмма, которая может реализовать фиксированные функции работы. Кроме того, он также имеет вход и выход. Вызов Exit означает функцию.
Как правило, класс может иметь несколько методов перегрузки, и различные методы перегрузки в классе могут быть разработаны в соответствии с различными потребностями. Среди них количество параметров, типов и даже порядка различных типов параметров - это разные перегрузки для одного и того же метода. Например, как показано на рисунке, класс строк, который мы часто видим, является типичным примером.
PS Этот пример также исправляет нелепую ошибку, которую я совершил, когда поделился своим опытом в прошлый раз. Проверьте заголовок еще раз, это означает, что оно верно, это перегрузка, и оно не написано как переписывание.
Метод/шаг
Во -первых, давайте напишем полный пример. Это самый примитивный метод, как показано на рисунке. Мы продолжим изучать каждый шаг в будущем и перезагрузить этот слой методом по слою.
1. В начале давайте обсудим, влияет ли модификатор доступа на сегодняшнее обсуждение. То есть они не являются необходимыми условиями для создания различных методов. С точки зрения непрофессионала, разница в методах не имеет ничего общего с тем, является ли модификатор доступа согласованным. Как показано на рисунке, если модификатор доступа противоречит, а параметры одинаковы (или ни один из них не имеет параметров), Java по умолчанию им по умолчанию как тот же метод, поэтому компиляция не может быть передана, и сообщается об ошибке.
2. После исключения модификаторов доступа давайте обсудим, может ли разница в значении возврата быть еще одним способом перегрузки здесь. Тип.
3. Единственная разница следующей - это параметры. Давайте практиковать в соответствии с ситуациями. Первый - это разные параметры.
4. На третьем этапе мы говорим о различных параметрах. Как показано на рисунке, типы параметров одинаковы, и они оба являются целочисленными типами, но имена формальных параметров разные, поэтому компиляция не может быть передана.
5. Кроме того, перегрузка, вызванная различными параметрами. Мы можем написать еще один пример, 1 метод без параметра, 1 метод параметров INT и два метода параметров Int, как показано на рисунке:
6. В настоящее время мы достигли ключевой ссылки. Есть ли другой тип разных перегрузков? некоторый! Представьте, что параметры разные, а цифры одинаковы. Да! Правильно догадался! Порядок отличается! В разных заказах все еще существуют разные методы, которые также позволяют перегружать. Как показано на картинке:
Вот еще один простой пример
int sum (int m, int n) {return m +n;} int sum (int m, int n, int k) {return m +n +k;} double sum (double m, double n) {return m + n;} двойная сумма (двойная m, двойная n, двойная k) {return m+n+k;} Основной реализацией является перегруженная сумма метода, которая имеет следующую семантику:
Сумма (M, N): найдите сумму целых чисел M и N,
Сумма (M, N, K): найдите сумму целых чисел M, N и K,
Сумма (M, N): найдите сумму реальных чисел M и N,
Сумма (M, N, K): найдите сумму реальных чисел M, N и K.
Наконец, давайте обобжим, что перегрузка только заботится о параметрах.