Liczby pierwsze → Algorytmy szyfrujące → Elektroniczny podpis…

Transkrypt

Liczby pierwsze → Algorytmy szyfrujące → Elektroniczny podpis…
Programowanie w Javie
Wykład 4 i 5
Klasy abstrakcyjne i interfejsy,
strumienie w Javie
Płock 2014/2015
Klasa abstrakcyjna
Klasą abstrakcyjną w Javie nazywamy taką klasę która:
• zawiera metody abstrakcyjne, tzn. metody bez
implementacji (nawet bez nawiasów klamrowych),
• może zawierać stałe (public static final),
• może zawierać zwykłe metody dające pewną
funkcjonalność klasie,
• klasy rozszerzające klasę abstrakcyjną powinny
implementować metody oznaczone jako abstrakcyjne,
• metod abstrakcyjnych nie można oznaczać jako
statycznych,
• nie da się stworzyć instancji klasy abstrakcyjnej.
dr Robert Kowalczyk, PWSZ Płock
2
Przykład klasy abstrakcyjnej
wielokąt
trójkąt
dr Robert Kowalczyk, PWSZ Płock
prostokąt
pięciokąt
3
Interfejs
Interfejs to pewien wymóg jaki muszą spełniać
klasy implementujące nasz interfejs.
Interfejs:
• zawiera tylko metody abstrakcyjne, tzn. metody
bez implementacji (nawet bez nawiasów
klamrowych),
• może zawierać stałe (public static
final),
• metod abstrakcyjnych nie można oznaczać jako
statycznych,
• nie da się stworzyć instancji interfejsu.
dr Robert Kowalczyk, PWSZ Płock
4
Przykład interfejsu MouseListener
dr Robert Kowalczyk, PWSZ Płock
5
Strumienie w Javie
Klasy strumieniowe
wejście
wyjście
strumienie bajtowe
FileInputStream
FileOutputStream
strumienie znakowe
FileReader
FileWriter
Klasy buforujące
wejście
wyjście
strumienie bajtowe
BufferedInputStream
BufferedOutputStream
strumienie znakowe
BufferedReader
BufferedWriter
dr Robert Kowalczyk, PWSZ Płock
6
Czytanie z pliku tekstowego
Scanner sc = new Scanner(new File("plik.txt"));
hasNext() – sprawdzamy czy jest kolejny wyraz do czytania
next() – pobieramy kolejny wyraz
lub
BufferedReader br = new BufferedReader(new FileReader("plik.txt"));
ready() – sprawdzamy czy jest kolejna linia do czytania
readLine() – pobieramy kolejną linię
dr Robert Kowalczyk, PWSZ Płock
7
Pisanie do pliku tekstowego
PrintWriter pw = new PrintWriter(new File("plik.txt"));
print("Hello")) – zapis do pliku
lub
BufferedWriter bw = new BufferedWriter(new FileWriter("plik.txt"));
write("Hello") – zapis do pliku
dr Robert Kowalczyk, PWSZ Płock
8
Kolekcje w Javie
Set (zbiór) – elementy nie mogą się powtarzać
List (lista) – elementy uporządkowane liniowo
Map (tablica asocjacyjna) – struktura (klucz, wartość)
dr Robert Kowalczyk, PWSZ Płock
9
Ćwiczenie
Przerób Ćwiczenia4.txt i
Ćwiczenia5.txt, które
pokazuje idee klas
abstrakcyjnych, interfejsów
oraz podstawy kolekcji w
Javie
dr Robert Kowalczyk, PWSZ Płock
10
Dziękuję za uwagę 
dr Robert Kowalczyk, PWSZ Płock
11