1 / 17

zima 2009/10

Programiranje I. zima 2009/10. Klase i objekti. Metod: programska jedinica koja sadrži promenljive i naredbe za obavljanje jednog specifičnog zadatka

keira
Download Presentation

zima 2009/10

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Programiranje I zima 2009/10

  2. Klase i objekti • Metod: programska jedinica koja sadrži promenljive i naredbe za obavljanje jednog specifičnog zadatka • Objekat: programska jedinica koja sadrži promenljive i metode za predstavljanje apstraktnih ili konkretnih entiteta iz realnosti koja nas okružuje Programiranje I

  3. Šta je objekat? Objekat je nešto što ima jedinstven identitet Sve je objekat: student, sto, stolica, taster, krug, kredit, ispit, ... Identitet objekta: Obeležja (atributi) objekta Mogućnosti (ponašanje) objekta Dejan Živković Programski jezici 3

  4. Šta je objekat? Obeležja (promenljive) Auto bela boja ugasi 4 vrata upali Mogućnosti (metodi) koči max brzina 200 km/s promeni brzinu Dejan Živković Programski jezici 4

  5. Šta je objekat? Dejan Živković Programski jezici 5

  6. Šta je klasa? Klasa objekata Klasa je opis objekata sa zajedničkim identitetom Klasa definiše obeležja i mogućnosti koje poseduju svi objekti klase Klasa definiše ,,mustru’’ kako izgledaju njeni pojedini objekti Dejan Živković Programski jezici 6

  7. Šta je klasa? Analogija tehnički nacrt zgrade = klasa izgrađena zgrada = objekat na osnovu jednog nacrta zgrade može se izgraditi više zgrada = na osnovu jedne klase može se konstruisati više objekata Dejan Živković Programski jezici 7

  8. Šta je klasa? Primer: class Zgrada { int brojSpratova; String boja; String adresa; . . . void okreči(...) { ... } void dozidaj(...) { ... } . . . } Dejan Živković Programski jezici 8

  9. Šta je klasa? Tri objekta klase Zgrada: Dejan Živković Programski jezici 9

  10. Šta je klasa? Primer: class ČlanPorodice { static String prezime; String ime; int uzrast; . . . } Dejan Živković Programski jezici 10

  11. Šta je klasa? U OOP se pišu klase, a objekti se ne pišu nego se konstruišu na osnovu klasa Format: modifikatori class ime-klase { //telo klase ... } Modifikatori nisu obavezni (public) Dejan Živković Programski jezici 11

  12. Šta je klasa? Terminologija instanca (primerak) klase = objekat te klase instanciranje klase = konstruisanje objekta te klase Java programi se sastoje isključivo od klasa, pa se sve mora nalaziti unutar klasa Dejan Živković Programski jezici 12

  13. Promenljive klasnog tipa Definicijom klase uvodi se novi tip podataka Vrednosti klasnog tipa su objekti odgovarajuće klase Ime klase može se koristiti za tip promenljive u naredbi deklaracije (kao i za tip parametra i tip rezultata nekog metoda) Dejan Živković Programski jezici 13

  14. Promenljive klasnog tipa Primer: publicclass Student { public String ime; publicint id; publicdouble test1, test2, test3; publicdouble prosek() { return (test1 + test2 + test3)/3; } } Dejan Živković Programski jezici 14

  15. Promenljive klasnog tipa Nastavak primera: Student s; // promenljiva klasnog tipa Student . . . s = new Student(); // konstruisanje i dodela // objekta klase Student // promenljivoj s // Skraćeni oblik: // Student s = new Student(); Dejan Živković Programski jezici 15

  16. Promenljive klasnog tipa Promenljiva klasnog tipa ne sadrži sam objekat koji joj je dodeljen, nego referencu (pokazivač) na njega s Dejan Živković Programski jezici 16

  17. Promenljive klasnog tipa Nastavak primera: s.ime = “Pera perić”; s.test1 = 95; s.test2 = 55; s.test3 = 100; System.out.println(s.prosek()); Dejan Živković Programski jezici 17

More Related