Programowanie Obiektowe w Javie (c.d.)

Slides:



Advertisements
Podobne prezentacje
Klasy abstrakcyjne i interfejsy
Advertisements

Programowanie obiektowe
Programowanie obiektowe
Programowanie obiektowe
Programowanie obiektowe PO PO - LAB 3 Wojciech Pieprzyca.
Programowanie obiektowe Andrzej Ziółkowski Wykład 3.
Klasy i obiekty.
Wzorce.
Dziedziczenie. Po co nam dziedziczenie? class osoba { char * imie, char * imie, * nazwisko; * nazwisko;public: void wypisz_imie(); void wypisz_imie();
Obiektowe metody projektowania systemów Design Patterns STRATEGY.
Programowanie w środowisku sieciowym
Dziedziczenie wieloaspektowe
Implementacja ekstensji klasy
Mapowanie dziedziczenia z UML do Java
Nguyen Hung Son Uniwersytet Warszawski
Programowanie obiektowe w Javie
Podstawy języka Java Nguyen Hung Son Uniwersytet Warszawski.
OOP - programowanie zorientowane obiektowo w VB.NET
Obiektowe metody projektowania systemów Command Pattern.
C++ wykład 2 ( ) Klasy i obiekty.
Czytanie, pisanie i rysowanie (czyli klasa I szkoły podstawowej)
przygotował Michał Wdaniec
Pakiety w Javie Łukasz Smyczyński (132834). Czym są pakiety? Klasy w Javie są grupowane w pewne zbiory zwane pakietami. Pakiety są więc pewnym podzbiorem.
Programowanie obiektowe III rok EiT
Podstawy programowania II
T: Różnice pomiędzy programowaniem strukturalnym a obiektowym
Generatory dokumentacji kodu źródłowego
Tworzenie aplikacji mobilnych
Programowanie obiektowe – zastosowanie języka Java SE
Programowanie obiektowe III rok EiT dr inż. Jerzy Kotowski Wykład IX.
Programowanie obiektowe III rok EiT
WPROWADZENIE W ŚWIAT OBIEKTÓW
Java – coś na temat Klas Piotr Rosik
Dziedziczenie Marek Serek Dziedziczenie Dziedziczenie to jeden z fundamentów programowania obiektowego. Umożliwia sprawne i łatwe wykorzystywanie.
Dziedziczenie Maciek Mięczakowski
INTERFEJSY I KLASY WEWNĘTRZNE
Programowanie obiektowe w Javie
Programowanie obiektowe Wykład 3 dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/21 Dariusz Wardowski.
Programowanie obiektowe Wykład 7 dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/20 Dariusz Wardowski.
Programowanie obiektowe Wykład 6 dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/14 Dariusz Wardowski.
Java 3 MPDI Programowanie obiektowe W5. Java - obiektowy język programowania stworzony przez firmę Sun Microsystems. Java jest językiem tworzenia programów.
Programowanie obiektowe 2013/2014
  ELEMENTY JĘZYKA JAVA komentarze w Javie, słowa kluczowe i operatory, proste typy danych, tablice, podstawowy zestaw instrukcji.
Prasek Aneta, Skiba Katarzyna. Funkcje stałe const to takie funkcje, które nie mogą modyfikować stanu obiektu. Oznacza to, że funkcja stała nie może zmieniać.
OCPJP Inner classes.
Programowanie w języku C++
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Programowanie strukturalne i obiektowe C++
Diagram klas Kluczowymi elementami są: klasy (class)
Programowanie strukturalne i obiektowe C++ Przeładowanie operatorów Robert Nowak.
Obiektowe metody projektowania systemów Adapter. Wstęp: „Dostosowanie interfejsu klasy do interfejsu, którego oczekuje użytkownik. Adapter umożliwia współprace.
Obiektowe metody projektowania systemów Abstract Factory design pattern (aka. Kit)
Partnerstwo dla Przyszłości 1 Lekcja 27 Klasy i obiekty.
Partnerstwo dla Przyszłości 1 Lekcja 28 Dziedziczenie i rodzaje dziedziczenia.
Podstawowe konstrukcje języka Java Bartosz Walter InMoST Wielkopolska sieć współpracy w zakresie innowacyjnych metod wytwarzania oprogramowania Termin.
Inżynieria oprogramowania Wzorce konstrukcyjne WWW: Jacek Matulewski Instytut Fizyki, UMK.
C++ mgr inż. Tomasz Turba Politechnika Opolska 2016.
Programowanie Obiektowe – Wykład 6
Wątki, programowanie współbieżne
Klasy, pola, obiekty, metody. Modyfikatory dostępu, hermetyzacja
(według:
(c) Krzysztof Barteczko 2014
Programowanie Obiektowe – Wykład 2
Programowanie obiektowe – zastosowanie języka Java SE
PGO Interfejsy Michail Mokkas.
Zdarzenia (eventy) Zdarzenia służą do powiadomienia użytkownika, gdy w używanej klasie dojdzie do pewnych wydarzeń zdefiniowanych przez twórcę klasy.
PGO - Projektowanie i implementacja pierwszych klas
PGO Dziedziczenie Michail Mokkas.
Tworzenie wątków w Javie
Zapis prezentacji:

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

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

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 */ }

Klasy abstrakcyjne W klasie abstrakcyjnej mamy: 2017-03-26 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

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

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(); }

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] { . . . }

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(); }

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; .......

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;

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.*

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 }

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

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, ...)

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.

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

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

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>

Klasa java.applet.Applet

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.

Cykl życia apletu

Elementy pakietu awt