Menu
Coddy logo textTech

Перегрузка методов

Часть раздела Основы путешествия по Java на Coddy. Урок 54 из 73.

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

Ключ заключается в том, что каждый перегруженный метод должен иметь уникальную сигнатуру метода. Сигнатура метода определяется его именем, а также типом и порядком его параметров.

Вот основные правила перегрузки методов:

  1. Одинаковое имя: Все перегруженные методы должны иметь одинаковое имя.
  2. Разные параметры: Каждая версия метода должна иметь другое количество параметров, другие типы параметров или и то, и другое.
  1. Тип возвращаемого значения недостаточен: перегруженные методы не могут различаться только типом возвращаемого значения. У них должны быть разные списки параметров.

Вот пример, иллюстрирующий перегрузку методов:

public class MathUtils {
    public static int add(int a, int b) {
    	return a + b;
    }

	public static double add(double a, double b) {
		return a + b;
	}

	public static int add(int a, int b, int c) {
		return a + b + c;
	}
}

В этом примере у нас есть три метода с именем add. Первый складывает два целых числа, второй складывает два числа двойной точности, а третий складывает три целых числа.

Java определяет, какой метод вызвать, на основе аргументов, переданных во время вызова метода.

Перегрузка методов делает код более читаемым и повторно используемым. Вместо создания разных имён для методов, выполняющих похожие задачи (например, addInts, addDoubles, addThreeInts), можно использовать одно имя — add, — и позволить компилятору выбрать подходящий метод в зависимости от контекста.

Помните: перегрузка требует разных типов или количества параметров, а не только разных имён параметров или типов возвращаемого значения.

Попробуйте сами

В этом уроке нет задания по программированию.

quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы

Потренируйтесь самостоятельно: Онлайн-компилятор Java