Modelowanie i implementacja systemów informatycznych - pjwstk
Modelowanie i implementacja systemów informatycznych - pjwstk
Modelowanie i implementacja systemów informatycznych - pjwstk
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
102• (7). Czyścimy dotychczasową zawartość ekstensji (usuwamy wszystkieaktualnie istniejące obiekty danej klasy).• (8). Znając liczbę zapisanych obiektów, w pętli odczytujemy ich zawartość,wywołując metodę dla każdego z nich.(1)(2)(3)(4)public class Film {public static void zapiszEkstensje(DataOutputStream stream)throws IOException {stream.writeInt(ekstensja.size());for(Film film : ekstensja) {film.write(stream);}}(5)(6)(7)(8)}public static void odczytajEkstensje(DataInputStream stream)throws IOException {Film film = null;int liczbaObiektow = stream.readInt();ekstensja.clear();for(int i = 0; i < liczbaObiektow; i++) {film = new Film();film.read(stream);}}3-12 Przykładowa <strong>implementacja</strong> „ręcznej” trwałości danych – zapis i odczyt ekstensjiPrzykład z listingu 3-13 pokazuje zapis oraz odczyt przykładowej ekstensji.Ważniejsze fragmenty:• (1). Określenie lokalizacji pliku na dysku, który będzie przechowywałekstensję.• (2). Utworzenie dwóch przykładowych instancji (obiektów) klasy Film.Dzięki specjalnej konstrukcji konstruktora obiekty są automatycznie dodawanedo ekstensji.• (3). Utworzenie strumienia wyjściowego podłączonego do pliku.• (4). Wywołanie metody klasowej powodującej zapisanie ekstensji dopodanego strumienia.