PGO Porównywanie obiektów

Slides:



Advertisements
Podobne prezentacje
C++ wykład 2 ( ) Klasy i obiekty.
Advertisements

Programowanie obiektowe
Wzorce.
Prowadzący: mgr inż. Elżbieta Majka
Agregacja Agregacja jest rodzajem asocjacji; zadaniem agregacji jest modelowanie związku całość-część. agregacja jest asocjacją: dla obu jej końców są.
Generics w .NET 2.0 Łukasz Rzeszot.
Kamil Łącki Dominik Strzelichowski
Implementacja ekstensji klasy
Implementacja asocjacji
Programowanie obiektowe w Javie
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 7: Procedury i funkcje © Jan Kaczmarek.
Szkolenie dla NaviExpert, Wprowadzenie.
Podstawy informatyki Rekurencja i rekurencja Grupa: 1A
Podstawy informatyki Wirtotechnologia – Funkcje Grupa: 1A
Tablice.
Z pamiętnika młodej internautki Zajęcia z sieci.Jestem uratowana, bo już wszędzie widzę żółwie!!!
Java – technologie zaawansowane Wykład 8 (9 maja 2011)
Zasady zaliczenia Warunki uzyskania zaliczenia:
Wprowadzenie do programowania w języku Turbo Pascal
Techniki i języki programowania
OPIS BIBLIOGRAFICZNY mgr Halina Gierut mgr inż. Małgorzata Sorys.
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.
Podstawy programowania
Podstawy informatyki Struktury, operatory, wyjątki
Zbiory biblioteczne W bibliotekach gromadzone są różnorodne zbiory, między innymi: książki, filmy na kasetach VHS oraz DVD, różne programy multimedialne,
Procedury i funkcje.
JAVA c.d.. Instrukcji wyboru SWITCH używamy, jeśli chcemy w zależności od wartości pewnego wyrażenia wykonać jeden z kilku fragmentów kodu. Jest to w.
Andrzej Repak Nr albumu
Java – coś na temat Klas Piotr Rosik
Inicjalizacja i sprzątanie
Jerzy Kotowski Politechnika Wrocławska
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.
Przekazywanie parametrów do funkcji oraz zmienne globalne i lokalne
Programowanie obiektowe – język C++
Programowanie obiektowe 2013/2014
ZWIĄZKI MIĘDZY KLASAMI KLASY ABSTRAKCYJNE OGRANICZENIA INTERFEJSY SZABLONY safa Michał Telus.
Opracowała: Edyta Guznowska – nauczyciel-bibliotekarz
Modelowanie obiektowe Diagramy klas
Projektowanie stron WWW
BJUG_1: Typy Generyczne, Kolekcje
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski 1 informatyka +
Programowanie strukturalne i obiektowe C++
Zmienne i typy danych w C#
Zakres Wzorce projektowe - kreacyjne -Factory Method -Abstract Factory.
Łukasz Bieszczad Mateusz Gałązka Karol Włodarek
Programowanie Zaawansowane
Mapa STL – C++. Problem polega na tym, że najczęściej chcielibyśmy przechowywać w zbiorze elementy jakiegoś bardziej złożonego typu, których on nie będzie.
Kolekcje (3) Zbiory. Porównywanie i porządkowanie elementów kolekcji. (c) Krzysztof Barteczko 2014.
Asocjacja,Kompozycja,Agregacja
Implementacja asocjacji (z atrybutami i bez) przy użyciu: referencji (kolekcji referencji) tablic asocjacyjnych przygotował: Kamil Kowalczyk.
C++ mgr inż. Tomasz Turba Politechnika Opolska 2016.
Wprowadzenie do języka Java Kolekcje w języku Java Bartosz Walter.
InMoST: Innowacyjne metody wytwarzania oprogramowania – II edycja (c) Bartosz Walter Wprowadzenie do obiektowości (1) Plan szkolenia – Część.
Programowanie Obiektowe – Wykład 6
Typy wyliczeniowe, kolekcje
Programowanie Obiektowe – Wykład 5
Wątki, programowanie współbieżne
(według:
Programowanie obiektowe II
Programowanie Obiektowe – Wykład 2
Klasy wewnętrzne. Praktyka użycia interfejsów i klas wewnętrznych
Wprowadzenie do programowania obiektowego
PGO Interfejsy Michail Mokkas.
PGO Kolekcje Michail Mokkas.
Język C++ Typy Łukasz Sztangret Katedra Informatyki Stosowanej i Modelowania Prezentacja przygotowana w oparciu o materiały Danuty Szeligi i Pawła Jerzego.
PGO - Projektowanie i implementacja pierwszych klas
PGO Dziedziczenie Michail Mokkas.
PGO Przeciążanie metod i konstruktorów
Zapis prezentacji:

PGO Porównywanie obiektów Michail Mokkas

Spis treści Comparable Comparator Porządkowanie kolekcji Enum Iterator Kompozycja oraz Agregacja Zadania

Comparable Interfejs umożliwiający porównywanie obiektów klas, które go implementują. Interfejs ten ustala porządek liniowy dla tych obiektów. Klasa, która dziedziczy ten interfejs powinna implementować metodę: int compareTo(Object o) Przykład: litery w alfabecie cyfry w zbiorze liczb całkowitych

Comparable kont. 1 Wynik w konsoli: -1 1 0

Comparator Interfejs umożliwiający porównywanie obiektów klas, które nie muszą implementować żadnego dodatkowego interfejsu (np. Comparable). Klasa w obrębie, której odbywa się porównywanie musi dziedziczyć interfejs Comparator. Klasa ta powinna także posiadać implementację metody: int compare(Object o1, Object o2)

Comparator kont. 1 Wynik w konsoli: -1 1

Porządkowanie kolekcji Dla obiektów klas dziedziczących po interfejsie Comparable: Collections.sort(MyNumber_list); MyNumber_list - kontener obiektów typu MyNumber Dla obiektów innych klas musimy podać klasę odpowiedzialną za porównywanie tych obiektów (musi ona dziedziczyć po Comparator): Collections.sort(MyObject_list, new Main()); MyObject_list - kontener obiektów typu MyObject Main - klasa posiadająca metodę compare()

Enum Typ danych, który może przechowywać zbiór zdefiniowanych stałych wartości. Wynik w konsoli: MONDAY TUESDAY WEDNESDAY THURSDAY FRIDAY SATURDAY SUNDAY

Iterator Interfejs ten wykorzystywany jest w celu przechodzenia z obiektu na obiekt jakiejś kolekcji. Posiada on następujące metody: boolean hasNext() - sprawdza czy kolekcja ma kolejny element Object next() - zwraca kolejny element kolekcji void remove() - usuwa obecny element

Iterator kont. 1 Wynik w konsoli: A B D C [A, B, D]

Kompozycja oraz Agregacja Relacja całość-część Kompozycja: po usunięciu całości, wszystkie jej części także są usuwane. Agregacja: po usunięciu całości, części pozostają.

Agregacja w Javie

Zadanie 1 Stwórz program, który po otrzymaniu nazwy miesiąca w języku angielskim wypisze nazwę miesiąca w języku polskim. Skorzystaj z typu enum.

Zadanie 2 Stwórz klasę Word (reprezentującą jakieś słowo). Klasa ta powinna zawierać zmienną: String word Obiekty klasy Word powinny być porównywalne. Każdy ze znaków słowa odpowiada liczbie z zakresu 0-127 (ASCII). Porównaj po sumie liczb odpowiadającym znakom. Wykorzystaj interfejs Comparable.

Zadanie 3 Stwórz klasę Word (reprezentującą jakieś słowo). Klasa ta powinna zawierać zmienną: String word Obiekty klasy Word powinny być porównywalne. Każdy ze znaków słowa odpowiada liczbie z zakresu 0-127 (ASCII). Porównaj po sumie liczb odpowiadającym znakom. Wykorzystaj interfejs Comparator.

Zadanie 4 Stwórz klasy Book (reprezentującą książkę), Chapter (reprezentującą rozdział) oraz Image (reprezentującą Ilustrację). Książka powinna zawierać tytuł, autora, wydawnictwo, rok wydania oraz rozdziały. Rozdziały powinny zawierać tytuł oraz ilustracje. Ilustracja powinna zawierać opis. Skorzystaj z agregacji.