PGO Przeciążanie metod i konstruktorów Michail Mokkas
Spis treści Przeciążanie metod Konstruktor Przeciążanie konstruktorów Słowo kluczowe this Przykłady Zadania
Przeciążanie metod overloading (ang.) Umożliwia tworzenie kilku (więcej niż jedna) metod o takiej samej nazwie, ale różnej implementacji. pod warunkiem, że zmieniamy: ilość parametrów metody typy parametrów metody nie możemy: zmienić jedynie typ metody zmienić jedynie nazwy parametrów metody zmienić jedynie modyfikator dostępu
Przykład 1 Prawidłowo.
Przykład 1 (kont. 1) Źle!
Konstruktor Metoda w klasie odpowiedzialna za tworzenie obiektów tej klasy. Posiada taką samą nazwę jak klasa. Nie zwracają niczego. (nie korzystają z return)
Przeciążanie konstruktorów Podobnie jak zwykłe metody.
Słowo kluczowe this Odnosi się do bieżącego obiektu klasy. Kilka zastosowań: w metodach klasy do odróżnienia argumentów od parametrów w konstruktorze do odróżnienia argumentów od parametrów do wywoływania alternatywnych konstruktorów 2 1 2
Przykład 2 Bez użycia this.
Przykład 3 Użycie this.
Przykład 4 Użycie this().
Przykład 5 Użycie this w klasie zagnieżdżonej (klasa w klasie).
Przykład 5 kont. inicjalizacja: rezultat:
Zadanie C1 Stwórz klasę posiadającą metodę „wypisz”, która dla jednego parametru (String) wypisze jego pierwszą i ostatnią literę, a dla dwóch parametrów (String, String) wypisze pierwszą literę pierwszego parametru i ostatnią drugiego. przykład: wypisz(“abc”) -> ac wypisz(“abc”, “123”) -> a3
Zadanie C2 Stwórz klasę, która posiada metodę o nazwie „dodaj” dla 2, 3 i 4 parametrów typu int i long. Metoda powinna zwracać sumę tych parametrów.
Zadanie C3 Stwórz klasę reprezentującą kubek, zawierającą następujące atrybuty: materiał (String) pojemność w ml (int) kolor (Color) nadruk (String) Stwórz następujące konstruktory: Kubek(materiał) Kubek(materiał, pojemność, kolor) Kubek(materiał, pojemność, nadruk) Kubek(materiał, pojemność, kolor, nadruk)
Zadanie C4 Do poprzedniego zadania dopisz co najmniej 4 kombinacje konstruktorów korzystających z this().