Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Programowanie Obiektowe w Javie (c.d.)

Podobne prezentacje


Prezentacja na temat: "Programowanie Obiektowe w Javie (c.d.)"— Zapis prezentacji:

1 Programowanie Obiektowe w Javie (c.d.)
Nguyen Hung Son Uniwersytet Warszawski

2 Tematy Klasy abstrakcyjne Interfejsy Pakiety Przegląd pakietów w Javie
Wprowadzenie do apletów

3 Klasy abstrakcyjne [extends NadKlasa] [implements Interfejsy] {
abstract final public private Synchronizable ... SKŁADNIA KLAS [ModyfikatorKlasy] class NazwaKlasy [extends NadKlasa] [implements Interfejsy] { /* definicje metod i pól */ } Pola: Modyfikator TypWartości NazwaPola Metody: Modyfikator TypZwracanejWartości Nazwa (Typ Argument1, Typ Argument2, ...) { /* implementacja (kod) metody */ }

4 Klasy abstrakcyjne W klasie abstrakcyjnej mamy:
Klasy abstrakcyjne W klasie abstrakcyjnej mamy: definicję niektórych metod (z modyfikatorem abstract) bez implementacji implementacje tych metod są w klasach potomnych nie możemy bezpośrednio stworzyć obiektów dla klas abstrakcyjnych

5 Klasy abstrakcyjne - przykład
Figura abstract Punkt Odcinek Wielokąt Trójkąt Czworokąt

6 Klasy abstrakcyjne Figura[] tab = new Figura[3];
Linia lin = new Linia(); Trojkat t = new Trojkat(); Wielokat w = new Czworokat(); ... tab[0] = lin; tab[1] = t; tab[2] = w; for(int i=0;i<3;i++){ tab[i].rysuj(); }

7 Interfejs Interfejs opisuje zbiór właściwości, które klasa musi implementować Interfejs może dziedziczyć z innych interfejsów, ale nie może dziedziczyć z klas ! [modyfikator] interface NazwaInterfejsu [extends listaInterfejsów] { . . . }

8 Interfejsy (c.d.) Wszystkie metody w interfejsie są publiczne i abstrakcyjne pola są publiczne, finalne i statyczne interface Kolekcja { int MAXIMUM = 200; void dodaj(Object obj); Object znajdz(Object obj); int liczbaObiektow(); }

9 Interfejs class Wektor implements Kolekcja{
private Object obiekty[] = new Object[MAXIMUM]; private short m_sLicznik = 0; public void dodaj(Object obj) { obiekty[m_sLicznik++]=obj; } public int liczbaObiektow(){ return m_sLicznik;

10 Temat nr 3 public Object znajdz(Object obj) {
for (int i = 0; i<m_sLicznik;i++) { if (obiekty[i].getClass() == obj.getClass()) System.out.println("Znaleziono obiekt klasy " + obj.getClass() ); return obiekty[i]; } return null;

11 Pakiety (Package) Pakiety w Javie to są podzbiory bibliotek, które mają podobne funkcje Pakiety mogą zawierać interfejsy Najważniejsze pakiety w Javie: java.lang.* java.util.* java.awt.*

12 Przykład package moje.graf; package moje.graf; public class Kwadrat
.../moje/graf/Kwadrat.java .../moje/graf/Punkt.java package moje.graf; public class Kwadrat { ... } // ... ew. definicje innych klas niepublicznych package moje.graf; public class Punkt { // definicja pól danych i metod klasy Punkt }

13 Przykład import moje.graf; class Cos { Punkt p = Punkt();
public static void main(String[] a) .... }

14 Przegląd Pakietów java.lang: Pakiet zawierający wszystkie podstawowe klasy Javy. Nie musi być jawnie importowany, ponieważ kompilator czyni to w sposób automatyczny. java.io: obsługi wejścia/wyjścia java.util: pomocnicze klasy użytkowe (np. generacja liczb losowych, operacje na ciągach znaków, kolekcje, ...)

15 Przegląd pakietów java.net: Zawiera klasy konieczne do tworzenia oprogramowania wykorzystującego sieć. Wraz z pakietem "java.io" umożliwia dostęp do sieci w celu ładowania lub wysyłania plików. java.awt: klasy służące do tworzenia graficznego interfejsu użytkownika (GUI). java.applet: Pakiet zawierający klasy używane podczas tworzenia appletów.

16 Przegląd pakietów Pakiet java.util.*

17

18 Aplety import java.applet.Applet; import java.awt.Graphics;
import java.awt.Color; public class SimpleApplet extends Applet { ... }

19 Przykład apletu Plik HelloWorld.class (binarny kod)
import java.applet.Applet; import java.awt.Graphics; public class HelloWorld extends Applet { public void paint(Graphics g) g.drawString("Hello world!", 50, 25); } Plik HelloWorld.class (binarny kod) <HTML><HEAD><TITLE> Przykładowy aplet </TITLE></HEAD> <BODY> Tutaj jest wynik działania apletu: <APPLET CODE="HelloWorld.class" WIDTH=150 HEIGHT=25></APPLET> </BODY> </HTML>

20 Klasa java.applet.Applet

21 Cykl życia apletu init - wywoływana tylko raz, gdy strona WWW zawierająca aplet zostanie po raz pierwszy "załadowana", jeśli opuścimy stronę WWW zawierającą aplet i wrócimy na nią, metoda init nie będzie wykonana ponownie, start - metoda jest wykonywana za każdym razem, gdy strona, na której znajduje się aplet, staje się stroną bieżącą w przeglądarce, stop - metoda ta jest wykonywana za każdym razem, gdy do przeglądarki ładowana jest następna strona WWW, destroy - wykonywana gdy aplet kończy swoje działanie.

22 Cykl życia apletu

23 Elementy pakietu awt


Pobierz ppt "Programowanie Obiektowe w Javie (c.d.)"

Podobne prezentacje


Reklamy Google