Enkapsulowanie Kolekcji - metoda Refaktoryzacji
Opis
Metoda tą nadajemy na klasę, która oferuje ustawienie oraz pobranie kolekcji przez get i set. Dokonujemy zamiany jej metody na właściwość tylko do odczytu (get()) i dodajemy nowe add() i remove() metody dla pojedynczego elementu.
Operację refaktoryzacji możemy nadawać dla różnego typu struktur danych, np: Array lub ArrayList .
Przykład
Listing 1.0 pokazuje metodę przed refaktoryzacją.
Listing 2.0 ukazuje metodę/funkcję po refaktoryzacji.
Listing
//listing 1.0
class Klient
public Set getKursy() {
return _kursy;
}
public void setKursy(Set arg) {
_kursy = arg;
}
//listing 2.0
class Klient
public Set getKursy() {
return _kursy;
}
public void addKurs (Kurs arg) {
_kursy.add(arg);
}
public void removeKurs (Kurs arg) {
_kursy.remove(arg);
}
class Klient
public Set getKursy() {
return _kursy;
}
public void setKursy(Set arg) {
_kursy = arg;
}
//listing 2.0
class Klient
public Set getKursy() {
return _kursy;
}
public void addKurs (Kurs arg) {
_kursy.add(arg);
}
public void removeKurs (Kurs arg) {
_kursy.remove(arg);
}
Dodano przez: divix
Ranga: Administrator serwisu Punktów: 0
Ranga: Administrator serwisu Punktów: 0
Komentarze użytkowników
:: Losowe artykuły

:: Wymiana linków

Modowe inspiracje |
Android Gry i Aplikacje |
ZaplanujTransport.pl: Przeprowadzki, transport, aukcje |
Logo dla firmy |
Change Tires - Car Weather Forecast Reminder |
Laminas: MVC Framework for PHP |
IT Books Reviews and Programming: JS, JAVA, PHP, ANDROID, CSS |
Katalog roślin |
Programming articles: JAVA, PHP, C++, Python, JavaScript |
Kancelaria Adwokacka Łukasz Huszno