Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Перевантаження Методів | Методи
Java Extended
course content

Зміст курсу

Java Extended

Java Extended

1. Глибока Структура Java
2. Методи
3. Рядки: Розширений Рівень
4. Класи
5. Класи: Розширений Рівень

book
Перевантаження Методів

Використання методу з різними параметрами

Java дозволяє створювати різні методи з однаковою назвою. Ці методи можуть мати різні типи повернення та/або типи параметрів. Це робиться для того, щоб можна було використовувати ці методи з різними типами даних. Розглянемо приклад методу для виведення масиву:

Ми можемо написати цей метод для прийому значень типу int, але що робити, якщо потрібно вивести масив типу char? Чи потрібно створювати метод з іншою назвою?

Для цього Java надає можливість перевантаження методів.

Розглянемо приклад виведення даних та реверсу масиву з попереднього розділу:

Main.java

Main.java

copy
123456789101112131415161718192021222324252627
// method to reverse an int array static int[] flipArray(int[] array) { // creating a new array to store the reversed elements int[] result = new int[array.length]; int index = 0; // iterating over the input array in reverse order for (int i = array.length - 1; i > 0; i--) { result[index] = array[i]; index++; } // returning the reversed int array return result; } // method to reverse a char array static char[] flipArray(char[] array) { // creating a new array to store the reversed elements char[] result = new char[array.length]; int index = 0; // iterating over the input array in reverse order for (int i = array.length - 1; i >= 0; i--) { result[index] = array[i]; index++; } // returning the reversed char array return result; }

Ми перевантажили метод flipArray, щоб він приймав і повертав різні параметри: int та char. Якщо викликати цей метод, він може приймати і повертати як тип int, так і тип char.

Тепер перевантажимо метод для відображення масиву на екрані. Цей метод також має приймати і повертати типи int та char:

Main.java

Main.java

copy
12345678910111213141516171819
// method to print an int array static void printArrayToTheConsole(int[] array) { // iterating through each element of the int array for (int element : array) { System.out.print(element + " "); } // printing a blank line after the array System.out.println(); } // method to print a char array static void printArrayToTheConsole(char[] array) { // iterating through each element of the char array for (char element : array) { System.out.print(element + " "); } // printing a blank line after the array System.out.println(); }

Тут ми перевантажили метод printArrayToTheConsole, щоб він приймав і повертав значення типів int та char.

Тепер об'єднаємо перевантажені методи та використаємо їх у методі main для масиву типу int та масиву типу char:

Main.java

Main.java

copy
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
package com.example; public class Main { // main method to run the application public static void main(String[] args) { // do not modify the code below int[] intArray = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; char[] charArray = {'s', 'b', 'c', 'd', 'e', 'f', 'g'}; printArrayToTheConsole(flipArray(intArray)); printArrayToTheConsole(flipArray(charArray)); } // method to reverse an int array static int[] flipArray(int[] array) { int[] result = new int[array.length]; int index = 0; // iterating over the array in reverse order for (int i = array.length - 1; i > 0; i--) { result[index] = array[i]; index++; } return result; } // method to reverse a char array static char[] flipArray(char[] array) { char[] result = new char[array.length]; int index = 0; // iterating over the array in reverse order for (int i = array.length - 1; i >= 0; i--) { result[index] = array[i]; index++; } return result; } // method to print an int array to the console static void printArrayToTheConsole(int[] array) { // printing each element of the int array for (int element : array) { System.out.print(element + " "); } System.out.println(); } // method to print a char array to the console static void printArrayToTheConsole(char[] array) { // printing each element of the char array for (char element : array) { System.out.print(element + " "); } System.out.println(); } }

Ми перевантажили два різні методи, додавши можливість використовувати ці методи з масивами типу char. Також ми трохи змінили назви цих методів, оскільки тепер можемо перевантажувати їх кілька разів для прийому та повернення значень різних типів.

Щоб переконатися в цьому, ми створили два різних масиви: один типу int, а інший типу char, і передали ці масиви у перевантажені методи, отримавши правильні результати.

До речі, ви вже стикалися з перевантаженими методами раніше. Наприклад, метод String класу substring() є перевантаженим і може мати або один параметр, int beginIndex, або два параметри, int beginIndex, int endIndex. Перевантаження методів є дуже корисним і широко використовується на практиці.

question mark

Скільки разів ми можемо перевантажити метод?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 6

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

course content

Зміст курсу

Java Extended

Java Extended

1. Глибока Структура Java
2. Методи
3. Рядки: Розширений Рівень
4. Класи
5. Класи: Розширений Рівень

book
Перевантаження Методів

Використання методу з різними параметрами

Java дозволяє створювати різні методи з однаковою назвою. Ці методи можуть мати різні типи повернення та/або типи параметрів. Це робиться для того, щоб можна було використовувати ці методи з різними типами даних. Розглянемо приклад методу для виведення масиву:

Ми можемо написати цей метод для прийому значень типу int, але що робити, якщо потрібно вивести масив типу char? Чи потрібно створювати метод з іншою назвою?

Для цього Java надає можливість перевантаження методів.

Розглянемо приклад виведення даних та реверсу масиву з попереднього розділу:

Main.java

Main.java

copy
123456789101112131415161718192021222324252627
// method to reverse an int array static int[] flipArray(int[] array) { // creating a new array to store the reversed elements int[] result = new int[array.length]; int index = 0; // iterating over the input array in reverse order for (int i = array.length - 1; i > 0; i--) { result[index] = array[i]; index++; } // returning the reversed int array return result; } // method to reverse a char array static char[] flipArray(char[] array) { // creating a new array to store the reversed elements char[] result = new char[array.length]; int index = 0; // iterating over the input array in reverse order for (int i = array.length - 1; i >= 0; i--) { result[index] = array[i]; index++; } // returning the reversed char array return result; }

Ми перевантажили метод flipArray, щоб він приймав і повертав різні параметри: int та char. Якщо викликати цей метод, він може приймати і повертати як тип int, так і тип char.

Тепер перевантажимо метод для відображення масиву на екрані. Цей метод також має приймати і повертати типи int та char:

Main.java

Main.java

copy
12345678910111213141516171819
// method to print an int array static void printArrayToTheConsole(int[] array) { // iterating through each element of the int array for (int element : array) { System.out.print(element + " "); } // printing a blank line after the array System.out.println(); } // method to print a char array static void printArrayToTheConsole(char[] array) { // iterating through each element of the char array for (char element : array) { System.out.print(element + " "); } // printing a blank line after the array System.out.println(); }

Тут ми перевантажили метод printArrayToTheConsole, щоб він приймав і повертав значення типів int та char.

Тепер об'єднаємо перевантажені методи та використаємо їх у методі main для масиву типу int та масиву типу char:

Main.java

Main.java

copy
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
package com.example; public class Main { // main method to run the application public static void main(String[] args) { // do not modify the code below int[] intArray = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; char[] charArray = {'s', 'b', 'c', 'd', 'e', 'f', 'g'}; printArrayToTheConsole(flipArray(intArray)); printArrayToTheConsole(flipArray(charArray)); } // method to reverse an int array static int[] flipArray(int[] array) { int[] result = new int[array.length]; int index = 0; // iterating over the array in reverse order for (int i = array.length - 1; i > 0; i--) { result[index] = array[i]; index++; } return result; } // method to reverse a char array static char[] flipArray(char[] array) { char[] result = new char[array.length]; int index = 0; // iterating over the array in reverse order for (int i = array.length - 1; i >= 0; i--) { result[index] = array[i]; index++; } return result; } // method to print an int array to the console static void printArrayToTheConsole(int[] array) { // printing each element of the int array for (int element : array) { System.out.print(element + " "); } System.out.println(); } // method to print a char array to the console static void printArrayToTheConsole(char[] array) { // printing each element of the char array for (char element : array) { System.out.print(element + " "); } System.out.println(); } }

Ми перевантажили два різні методи, додавши можливість використовувати ці методи з масивами типу char. Також ми трохи змінили назви цих методів, оскільки тепер можемо перевантажувати їх кілька разів для прийому та повернення значень різних типів.

Щоб переконатися в цьому, ми створили два різних масиви: один типу int, а інший типу char, і передали ці масиви у перевантажені методи, отримавши правильні результати.

До речі, ви вже стикалися з перевантаженими методами раніше. Наприклад, метод String класу substring() є перевантаженим і може мати або один параметр, int beginIndex, або два параметри, int beginIndex, int endIndex. Перевантаження методів є дуже корисним і широко використовується на практиці.

question mark

Скільки разів ми можемо перевантажити метод?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 6
some-alt