Przesłanianie metod i pól - Przypomnienie niezbędnych wiadomości |
Instrukcje dodatkowe - Programowanie w języku JAVA |
Wpisany przez Administrator |
Strona 3 z 8
Przypomnijmy sobie, na rozgrzewkę kilka umiejętności dot. przeciążania metod. Spróbuj poniższe zadanie zrobić sam:
Zad. 1: Napisz program, który: -definiuje klasę punkt, zawierającą *pole typu double o nazwie wspX; *pole typu double o nazwie wspY; *metodę ustaw_wspolrzedne, która przyjmuje dwa argumenty typu double: nX oraz nY i podstawia te wartości odpowiednio w pola wspX oraz wspY -definiuje klasę punkt3d, zawierającą: *pole typu double o nazwie wspZ; *metodę ustaw_wspolrzedne, która przyjmuje trzy argumenty typu double: nX, nY oraz nZ i podstawia te wartości odpowiednio w pola wspX wspY oraz wspZ Stwórz obiekt p1 klasy punkt oraz obiekt p2 klasy pubkt3d. Wywołaj metodę ustaw_wspolrzedne (double nX, double nY) dla p1 z dowolnymi poprawnymi wartościami (np.: 10, 20). Wywołaj metodę ustaw_wspolrzedne (double nX, double nY) dla p2 z dowolnymi poprawnymi wartościami (np.: 10, 20). Wywołaj metodę ustaw_wspolrzedne (double nX, double nY, double nZ) dla p2 z dowolnymi poprawnymi wartościami (np.: 10, 20, 30).
Spróbuj sam napisać ten program. Listing znajduje się na końcu instrukcji w dziale Rozwiązania. Efekt uruchomienia programu: Co ustaliliśmy dzięki temu programowi? 1) Możliwe jest przeciążanie metod w klasach bazowych i potomnych 2) Klasa potomna dziedziczy metody klasy bazowej 3) Klasa bazowa nie ma dostępu do metod klasy potomnej - co jest zupełnie logiczne. Jeśli nie wierzysz, to spróbuj wywołać metodę ustaw_wspolrzedne (double nX, double nY, double nZ) dla p2 z dowolnymi poprawnymi wartościami (np.: 10, 20, 30)
|