1. Treści programowe:
Deklaracja klasy, deklaracja zmiennych
obiektowych, metod i konstruktorów, tworzenie nowych obiektów, odwoływanie się
do zmiennych obiektowych z poziomu obiektu, wywoływanie metod i konstruktorów.
2. Cel zajęć:
Wprowadzenie do programowania
obiektowego w Javie.
Opanowanie umiejętności pojmowania
programu w kategoriach obiektu.
Opanowanie umiejętności deklaracji
metod i konstruktorów, tworzenia klas i obiektów.
3. Materiały
Klasa
jest szablonem (opisem) użytym do
stworzenia obiektu. Każdy obiekt utworzony według jednej klasy będzie miał
podobne lub wręcz takie same cechy.
Definicję klasy zaczynamy od słowa
kluczowego class
oraz nazwy, która musi być taka sama jak nazwa
pliku, w którym została zapisana. Wnętrze klasy określone jest przez klamerki {}.
Obiekt jest instancją klasy. Obiekt służy do
przechowywania konkretnych wartości zdefiniowanych wg opisu danej Klasy. Ma
również dostępne składowe w postaci zmiennych, konstruktorów oraz metod.
Metoda pozwala grupować instrukcje oraz wywoływać je
dowolną ilość razy. Pojęcie metody (programowanie obiektowe) podobne jest do
pojęcia funkcji np. w języku C (programowanie strukturalne).
· Tworzenie odwołania do obiektu (zmiennej
obiektowej):
NazwaKlasy
nazwaObiektu;
·
tworzenie nowego obiektu
oraz wywołanie konstruktora:
new NazwaKlasy();
· tworzenie nowego obiektu, wywołanie konstruktora
oraz przypisanie obiektu do odwołania
(zmiennej obiektowej):
nazwaObiektu = new NazwaKlasy();
można połączyć wszystkie elementy:
NawaKlasy
nazwaObiektu = new NazwaKlasy();
operator new służy do dynamicznej alokacji obiektu w pamięci
operacyjnej.
Wskazówki: Nazwy klas
deklarujemy z dużej litery. Nazwy zmiennych oraz nazwy metod z małej.
Przykładowy program
obrazujący strukturę oraz sposób deklaracji klas, jak również tworzenie i
używanie obiektów:


Konstruktor to specjalna metoda charakteryzująca się tym, iż
wywoływana jest tylko raz podczas tworzenia nowego obiektu.
Wykorzystywana jest np. do ustawiania wartości początkowych dla zmiennych oraz
funkcji, które muszą być wykonane na samym początku tworzenia obiektu.
Deklaracja
konstruktora - nazwa konstruktora jest
taka sama jak nazwa klasy, w którym jest deklarowany, konstruktor może
przekazywać wartości, ale nie może wartości zwracać. Przed deklaracją
konstruktora nie definiujemy typu zwracanej wartości dotyczy to również określenia
void.
Poniższy przykład programu ukazuje
programowanie obiektowe z wykorzystaniem konstruktorów. Deklarując kilka
konstruktorów mówimy o mechanizmie przeciążania. Przeciążać konstruktor można
podobnie jak metodę ilością lub typem argumentów.

Klasa Student jest szablonem lub planem dla tworzenia obiektów,
które reprezentują konkretnych studentów. W kontekście programowania
obiektowego, każdy obiekt Student jest instancją tej klasy, posiadającą swoje
własne, unikalne dane (pola/atrybuty), takie jak:
Klasa ta
definiuje również zachowanie obiektów (metody), takie jak:
Dzięki temu,
dane i operacje na nich są hermetyzowane w jednym miejscu.


Klasa Uczelnia jest agregatem i klasą główną, która zarządza
obiektami typu Student. W tym konkretnym programie, jej zadaniem jest:
Ten projekt
odzwierciedla świat rzeczywisty: uczelnia składa się z wielu studentów, a
programowanie obiektowe pozwala odwzorować tę relację w kodzie, co czyni
program bardziej zorganizowanym i łatwiejszym do rozbudowy.
4. Zadania
Zadanie
1: Tekst
Napisz program o nazwie „Tekst”, w którym:
- zadeklaruj metodę „pokazTekst” wyświetlającą 10 razy na
ekranie napis „1). Język Java”.
- wywołaj metodę pokazTekst (metoda nie może być statyczna)
Zadanie 2: Towar
w sklepie
Napisz program, w którym zadeklaruj
klasę Towar przechowującą
następujące składowe:
- zmienną nazwa,
- zmienną cena,
- zmienną kod,
- metodę wyświetlającą wartości
wszystkich składowych na ekranie o nazwie
pokazWartosci,
- metodę ustawWartosci
przypisującą wartości podane jako argumenty tej metody do zmiennych nazwa, cena, kod.
Zadeklaruj klasę Sklep (główną klasę programu),
w której utwórz trzy obiekty oraz przypisz im
przykładowe wartości odwołując się
bezpośrednio do zmiennych lub przez metodę ustawWartości.
Wyświetl wartości wszystkich
zadeklarowanych obiektów.
Zadanie 3: Towar w sklepie z dodatkowymi sposobami tworzenia
nowego obiektu
Zmodyfikuj program z zadania 2 tak, aby
w czasie tworzenia nowego obiektu przypisywane były wartości:
- początkowe dla składowych nazwa „brak”, cena „0.0”, kod „A00000”.
- podane
jako argumenty: nazwa, cena, kod
W klasie
Sklep utwórz kilka obiektów na wszystkie możliwe sposoby.
Zadanie
4: Samochody
Napisz program przechowujący informacje
o samochodach uwzględniając takie atrybuty, jak: marka,
moc silnika, typ silnika, cena.
Zadeklaruj wszystkie niezbędne składowe
(zmienne oraz metody) wspomagające zarządzaniu danymi. Wprowadź informację o co
najmniej trzech samochodach.
Zadeklaruj niezbędne elementy programu
tak aby możliwe było wprowadzanie danych samochodu w trakcie tworzenia nowego
obiektu.
Zadanie 5:
Suma cyfr liczby
Stwórz klasę KalkulatorCyfr, która będzie zawierać
całą logikę obliczania sumy cyfr.
Utwórz trzy różne obiekty ukazując działanie programu.