Zad. 2 kolekcje i typy uogólnione

a. Utwórz kolekcję ArrayList, wstaw do niej kilka obiektów poniżej zdefiniowanej klasy, i policz sumę wszystkich półek wszystkich regałów kolekcji.

public class Regał{

private int ilePółek;

public Regał(int ilePółek){

this.ilePółek = ilePółek;

}

public int ilePółek(){

return ilePółek;

}

}

b. Co trzeba dopisać, by móc przechowywać regały w kolekcji HashSet?

Zad. 3 dziedziczenie

a. Czy konstruktory są dziedziczone tak jak zwykłe metody?

b. Zdefiniuj klasy zgodnie z podaną niżej strukturą.

Osoba

Kursywą oznaczono klasę abstrakcyjną

- pola prywatne

# konstruktor chroniony

+ konstruktory i metody publiczne

- String nazwisko

# Osoba(String nazwisko)

+ String nazwisko()

0x08 graphic
0x08 graphic

Pracownik

Klient

- String stanowisko

- boolean obsłużony

+ Pracownik(
String nazwisko,
String stanowisko)

+ Klient(String nazwisko)

+ void obsłuż()

Zad. 4 wyjątki i strumienie

a. Czym charakteryzuje się dekorator? Które z użytych niżej klas pełnią funkcję dekoratora?

PrintWriter pr = new PrintWriter(
new BufferedWriter(
new FileWriter("plik.txt"))));

b. Oto fragment dokumentacji klasy Pudełko. Napisz program, który tworzy 2 obiekty tej klasy, próbuje je ze sobą skleić, przechwytując ewentualne wyjątki.

public Pudełko(int wys, int szer, int dl)

Tworzy pudełko o podanej wysokości, szerokości i długości.

public Pudełko sklej(Pudełko p) throws NiesklejalnePudełka

Zwraca nowe pudełko będące sklejeniem bieżącego z pudełkiem podanym w argumencie. Wyrzuca wyjątek, jeśli pudełka mają niewłaściwe rozmiary.

Twój program:

Programowanie

Egzamin

26.06.2008

A

Imię i nazwisko Specjalność Indeks

Ocena (ilość punktów) z laboratorium:

Zad. 1

Zad. 2

Zad. 3

Zad. 4

Suma

Zad. 1 tablice

a. Napisz funkcję, które dostaje tablicę wypełnioną danymi. Funkcja tworzy nową tablicę o rozmiarze większym o 10 od tej z argumentu, przepisuje zawartość starej do nowej i zwraca tę nową tablicę.

static int[] powiększ(int[] tab){

b. Utwórz tablicę regałów (obiektów klasy z zadania 2) i wstaw do niej kilka obiektów.