KREIRANJE OBJEKATA.

Slides:



Advertisements
Similar presentations
PiKKS. Ukratko Općenito Osnovni elementi OOP u Javi Overloading, overriding, virtual method invocation, modifikatori... Exceptions Java GUI Threads.
Advertisements

TENSES: PAST SIMPLE and PAST CONTINUOUS Prošla vremena: forma i upotreba Past simple ili obično prošlo vreme gradi se tako što se na infinitiv glagola.
KAKO IZRADITI IGRU: Izrežite tabele, sličice, kartice, žetone. Ostavite 1mm bijelog ruba oko okvira. Nalijepite ih na karton u boji (hamer), jako lijepo.
Predavanje br. 7 Formiranje GIS-a II Relacione klase.
ASPECT RATIO PAŠIĆ ANELA.
Formiranje GIS-a I ArcGIS – Desktop File Geodatabase
Procedure u visual basicu
Petlje WHILE – WEND.
Mrezno racunarstvo Java, niti.
RP3/predavanje08 Ugniježdeni tipovi Iznimke 10/11/2018
Klase i objekti u C#.
Glava 8 Nasljedjivanje.
Java Hello world !.
KONTROLE.
Polimorfizam, Apstrakcija, Šabloni
Algoritamske/programske strukture
Chapter 7 Arrays (Nizovi).
Nadgradnja klasa i nasljeđivanje – 3
Programi,Podaci,Varijable,Računanje- Uvod
C++ funkcije, stringovi, imenski prostor, memorija i fajlovi
Programiranje - Blokovi naredbi i logički tipovi –
OSNOVE PROGRAMIRANJA U PROGRAMSKOM JEZIKU
Pojam DBMS. Relacione baze podataka
Internet programiranje
PROGRAMIRANJE MENIJA.
CheckBox RadioButton RadioGroup
Naredbe ciklusa.
Programiranje 2 – C++ Klase i objekti
7. Rad sa AWT-komponentama
Mrezno racunarstvo glava 7 URLs and URIs.
Petlje FOR - NEXT.
Internet mreže, FTN - KZI
Uvod u C++ klase i objekte
Profesor dr Boban Stojanović
Objektno orijentisano programiranje
Објектно орјентисано програмирање
Java Klase (Classes).
Uvod u programiranje - matematika – X predavanje
RAZGRANATA STRUKTURA Zadaci i rešenja
RAZGRANATA STRUKTURA Zadaci i rešenja
Arrays and strings -2 (nizovi i znakovni nizovi)
Reference ćelije i opsega
LABORATORIJSKA VEŽBA VEŽBA 4
14 UNUTRAŠNJE I ANONIMNE KLASE
Изведене класе Вишеструко извођење Полиморфизам
Elementi programskog jezika PASCAL
Podešavanje osobina stranica
Arrays and strings -1 (nizovi i znakovni nizovi)
Klasa grafik.
Objektno orijentisano programiranje
Pristup podacima Izvještaji
Regional Center for Talented Youth Belgrade II
M-datoteke.
Element form Milena Kostadinović.
InputBox i naredba IF.
MessageBox.
Objektno orijentisano programiranje
Ključne reči,identifikatori, konstante i promenljive
Internet FTP usluga.
PROGRAMSKI JEZIK PASCAL
Lazarus okruženje TIPOVI UNIT-a
Osnovni simboli jezika Pascal
Do While ... Loop struktura
Default konstruktor struct C{ int i; }; struct D{ D( ):i(1){ }
Strukture podataka i algoritmi 5. VRIJEME IZVRŠAVANJA ALGORITMA
LimeSurvey Uvjetni prikaz pitanja Internetska istraživanja
Dvostruka autentifikacija
Ponavljanje Pisana provjera
Vježbenica 2: struktura grananja – 2.dio
Iracionalni brojevi
Presentation transcript:

KREIRANJE OBJEKATA

Objekti (instance klasa) se kreiraju pomo ću operatora new kao u slede ćem primeru. Pravougaonik alfa = new Pravougaonik (); Ovom linijom koda se promenljiva ( često se koristi i termin varijabla ) alfa deklariše kao promenljiva tipa Pravougaonik a ujedno se i kreira objekat klase Pravougaonik i dodeljuje toj promenljivoj. Isti efekat se može posti ći i na slede ći na čin Pravougaonik alfa; alfa = new Pravougaonik (); tj. razdvajanjem deklaracije od kreiranja objekta. Pitanja 1) Šta je instanca klase? 2) Kako se kreira objekat klase?

PRISTUP ČLANOVIMA KLASE

Članovi klase su podaci članovi (atributi) i funkcije članice (metode) Članovi klase su podaci članovi (atributi) i funkcije članice (metode). Kada se kreira jedan objekat neke klase pristupanje njegovim članovima vrši se primenom operatora tačka tj. pristupanje podacima članovima imeObjektaKlase.ImeAtributa pristupanje funkcijama članicama imeObjektaKlase.NazivFunkcije(stvarni argumenti) Primer Pravougaonik prav1 = new Pravougaonik (2.5, 3.0); System. Console .WriteLine( "Povrsina je " + prav1.Povrsina()); U prvoj liniji je kreiran objekat prav1 klase Pravougaonik a zatim je u drugoj liniji na standardni izlaz (System. Console .WriteLine) ispisan tekst Povrsina je i površina objekta prav1 koja se dobija pozivom njegove metode Povrsina().

Podsetimo se da je neophodno deklarisati metodu Povrsina() kao javnu da bi moglo da joj se pristupi! Može se primetiti da u prethodnom primeru konstruktor klase Pravougaonik ima dva argumenta. Uo čimo da System. Console .WriteLine tako đe predstavlja poziv metode! Pitanja 1) Šta su članovi klase? 2) Kako se pristupa članovima klase?

KONSTRUKTORI

Konstruktori su funkcije koje karakteriše: isto ime kao i ime klase, nemaju povratnu vrednost. Sve ostale karakteristike koje važe za bilo koju funkciju važe i za konstruktore. Svaki put kada se kreira objekat neke klase zapravo se poziva konstruktor te klase. Veoma često se u konstruktorima vrši inicijalizacija podataka članova klase. Konstruktori mogu biti bez argumenata (tada se zovu podrazumevani konstruktori ili default konstruktori ) ili sa argumentima. Jasno je da može postojati samo jedan podrazumevani konstruktor i više konstruktora sa parametrima. Ako ne definišemo podrazumevani konstruktor sam sistem će ga kreirati i telo konstruktora će biti prazno. Zna či, svaki put kada se kreira novi objekat neki konstruktor se poziva!

Primer Definišimo za klasu Pravougaonik podrazumevani konstruktor koji će da postavlja vrednosti atributa duzina i sirina na nulu i konstruktor koji ima dva parametra kojima se postavljaju početne vrednosti parametara duzina i sirina. public class Pravougaonik { private float duzina; private float sirina; 10 public Pravougaonik() // podrazumevani konstruktor { duzina = 0; sirina = 0; } // konstruktor sa parametrima public Pravougaonik( float duz, float sir) { duzina = duz; sirina = sir; } Pitanja 1) Šta je konstruktor? 2) Šta je podrazumevani konstruktor? 3) Koliko konstruktora sa argumentima može imati jedna klasa?

DESTRUKTORI Konstruktori se pozivaju svaki put kada se kreira neki objekat. Pri uništavanju objekata pozivaju se destruktori pre samog uništavanja objekta. Destruktori su funkcije koje imaju isto ime kao i ime klase tj. ime konstruktora sa dodatkom znaka ~ (tilda) kao prvog simbola imena. Za razliku od konstruktora destruktori nemaju definisan kvalifikator pristupa public. Takodje nemaju ni povratnu vrednost kao ni naredbu return u telu. Destruktori takodje nemaju ni parametre. ~Pravougaonik() { // neki kod } Pitanja 1) Šta je destruktor? 2) Da li destruktori imaju definisan kvalifikator pristupa? 3) Da li destruktori imaju povratnu vrednsot? 4) Da li destruktori mogu imati parametre