2. Java – klasy, pakiety

Transkrypt

2. Java – klasy, pakiety
2. Java – klasy, pakiety
1. Utwórz klasę z polem statycznym typu String inicjalizowanym w miejscu definicji
oraz drugim, które jest inicjalizowane dopiero w konstruktorze. Dodaj metodę statyczną
wypisującą oba pola. Wywołaj metodę statyczną na klasie i na obiekcie klasy i sprawdź, jakie
są wartości pól statycznych (czyli przed wywołaniem konstruktora i po wywołaniu
konstruktora).
2. Napisz klasę w pakiecie moje.tablica, która będzie przechowywała tablicę int[][] oraz
wymiary tej tablicy. Konstruktor tej klasy ma przyjmować dwa parametry (wymiary tablicy),
alokować tablice, wypisywać na standardowe wyjście informacje o wymiarach zaalokowanej
tablicy i przypisywać elementom tablicy liczby będące iloczynem indeksu rzędu i kolumny
(indeks należy powiększyć o 1). W klasie ma się znajdować metoda toString(), która będzie
wypisywała zawartość klasy (czyli tablicy, którą przechowuje) w postaci String'a:
rząd 1, kolumna 1, wartość 1
rząd 1, kolumna 2, wartość 2
...
W funkcji main (w innej klasie w pakiecie moje.testy) utwórz kilka obiektów powyżej
opisanej klasy i wypisz je na standardowe wyjście.
3. Stwórz pakiet moje.figury. W tym pakiecie umieść abstrakcyjną klasę Figura. Ma ona
mieć abstrakcyjne metody:
double pole()
double obwod()
W tym samym pakiecie umieść dwie klasy: Kolo i Prostokat, które będą dziedziczyły z
Figury, miały odpowiednie pola i konstruktory, implementowały obydwie abstrakcyjne
metody klasy Figura. Następnie w pakiecie moj.testy umieść klasę testową, w której
przetestuj utworzone klasy, tworząc tablicę Figur, a następnie po kolei wywołaj metody dla
każdego obiektu z tablicy. Jak się nazywa zaobserwowane zachowanie?
4. W pakiecie nowy napisz klasę publiczną KlasaBazowa zawierającą konstruktor
przeciążony przyjmujący jako parametr zmienną int (konstruktor niech wypisze komunikat na
konsolę). Następnie napisz klasę publiczną KlasaMoja dziedziczącą po poprzedniej i stwórz
jej obiekt. Wytłumacz reakcję kompilatora – do poprawnego działania wykorzystaj słowo
kluczowe super.
5. Do klasy KlasaBazowa dodaj metody: prywatną, publiczną, zaprzyjaźnioną i
chronioną. Sprawdź, do których stworzonych metod masz dostęp z wnętrza tej klasy, a do
jakich w klasie pochodnej (KlasaMoja). Stwórz klasę w pakiecie nowy.podpakiet, w której
składową będzie obiekt KlasyBazowej. Sprawdź, do których metod masz tutaj dostęp. Po
skompilowaniu sprawdź gdzie zapisane zostały pliki projektu.
6.
Napisz
kod
generujący
i
przechwytujący
ArrayIndexOutOfBoundsException (indeks tablicy poza zakresem).
wyjątek
typu
7. Napisz aplikację czytającą ciąg znaków wprowadzonych z klawiatury i wypisującą je
Programowanie sieciowe – Java – klasy, pakiety - mgr inż. Paweł Kośla, mgr Marcin Raniszewski
1
na ekran w postaci przekonwertowanej na WIELKIE litery. Zmodyfikuj następnie tak, by
działała w pętli do wpisania słowa „koniec”. Wykorzystaj klasę:
BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in));
Programowanie sieciowe – Java – klasy, pakiety - mgr inż. Paweł Kośla, mgr Marcin Raniszewski
2