Wprowadzenie do programowania obiektowego
Michail Mokkas
Spis treści
Programowanie strukturalne
Instrukcja GOTO
Programowanie obiektowe
Typy proste
Klasy
Obiekty
Zmienne
Metody
Instrukcje warunkowe
Instrukcje iteracyjne (pętle)
Zintegrowane środowisko programistyczne (IDE)
Wpisywanie i wypisywanie (do konsoli)
Zadania
Programowanie strukturalne
Paradygmat programowania
Charakteryzuje się podziałem kodu źródłowego programu na bloki
Wykorzystuje struktury kontrolne
instrukcje warunkowe
instrukcje iteracyjne (pętle)
Wykorzystuje funkcje/procedury
Odpowiedź na mającą złą reputację instrukcję GOTO
Instrukcja GOTO
Programowanie obiektowe
Paradygmat programowania
Bazuje na koncepcji obiektów
Posiada struktury kontrolne
Programy składają się z obiektów bezpośrednio wpływających na siebie
Ułatwia proste modyfikacje/dorabianie kodu poprzez mechanizmy jak np. dziedziczenie
Umożliwia enkapsulację/hermetyzację –
powiązywanie danych i metod oraz restrykcja dostępu do nich
Typy proste
Służą do przechowywania i manipulacji prostych danych.
Najbardziej bazowe typy danych w Javie:
byte - reprezentuje bajt danych w postaci liczby całkowitej z zakresu -127 do 128
char - reprezentuje jeden znak/symbol
short - reprezentuje liczbę całkowitą (zakres -2^15 do (2^15)-1 )
int - reprezentuje liczbę całkowitą (zakres -(2^31) do (2^31)-1 )
long - reprezentuje liczbę całkowitą (zakres -(2^63) do (2^63)-1 )
float - reprezentuje liczbę zmiennoprzecinkową
double - reprezentuje liczbę zmiennoprzecinkową (dokładniejsza)
boolean - reprezentuje zmienną logiczną z wartościami (true/false)
Klasy
Szablon, który tworzy obiekty.
Obiekty
Łączą stan i zachowanie programu
stan – dane (pola)
zachowanie – metody
Tworzenie obiektów:
Zmienne
1. Zmienne klasowe - ta sama zmienna dla każdej instancji danej klasy (static)
2. Zmienne instancji – zmienna może się różnić pomiędzy instancjami danej klasy
3. Zmienne lokalne – wykorzystywane jedynie w obszarze metody 4. Zmienne jako parametry/argumenty metod – przekazywane do
metod
2 1
3 4
Metody
Sposób komunikacji z obiektami.
Wywołując metodę, pytamy obiekt o wykonanie poszczególnego zadania.
Instrukcje warunkowe
Dają możliwość aplikacji podjęcia innej ścieżki w zależności od warunków.
Instrukcje iteracyjne (pętle)
Umożliwiają wielokrotne wykonywanie danej operacji bez większego wysiłku programisty.
Wpisywanie i wypisywanie (do konsoli)
Wypisywanie do konsoli:
Wpisywanie do konsoli:
Zintegrowane środowisko programistyczne (IDE)
Eclipse
Netbeans
IntelliJ IDEA
JCreator
Zadanie A1
Napisz program, który umożliwi
użytkownikowi wpisanie dowolnej liczby
całkowitej z zakresu [1-99], po czym wyświetli ją w konsoli w postaci słownej.
np. 23 -> dwadzieścia trzy
Zadanie A2
Napisz program, który po wpisaniu dowolnej liczby całkowitej (int) poda najbliższą liczbę pierwszą.
W przypadku pojawienia się dwóch o tej samej bliskości, wybierze większą. np. 6 -> 7 //nie 5
Zadanie A3
Napisz program, który będzie przechowywał kontakty (nazwa, numer telefonu, adres e-
mail).
Kontakty mogą być predefiniowane z poziomu kodu.
Program pyta o selekcję trybu wyszukiwania (po nazwie, numerze telefonu lub adresie e- mail).
Program prosi o wpisanie konkretnej wartości i wypisuje wszystkie powiązane z nim informacje w postaci:
Imię i nazwisko: nazwa, tel.: numer telefonu, e- mail: adres e-mail
Zadanie A4
Napisz program, który będzie symulować pracę biletomatu.
Użytkownik podaje ilość biletów (zakładamy, że każdy kosztuje 4 PLN).
Pogram prosi o dokonanie zapłaty.
Użytkownik wpisuje kwotę do konsoli.
Program wypisuje należną resztę w postaci:
Suma reszty: (a+b+c+d+e) PLN a = 200*A
b = 100*B c = 50*C d = 20*D e = 10*E f = 5*F g = 2*G h = 1*H
Gdzie A-H to ilość wydanych banknotów/monet, z których składa się reszta.
Zakładamy, że biletomat posiada nieograniczoną liczbę zasobów banknotów oraz monet, a także prioretyzuje wypłatę mozliwie największych nominałów.