Docsity
Docsity

Pripremite ispite
Pripremite ispite

Studirajte zahvaljujući brojnim resursima koji su dostupni na Docsity-u


Nabavite poene za preuzimanje
Nabavite poene za preuzimanje

Zaradite bodove pomažući drugim studentima ili ih kupite uz Premium plan


Školska orijentacija
Školska orijentacija


p03-Skripta-Programiranje-Građevina, Rezime od Osnovi programiranja

Građevinski fakultet,Skripta,Programiranje,Vežbe,Programiranje u javi,JAVA,Matrice,Konvertovanje,Parcijala,

Tipologija: Rezime

2012/2013

Učitan datuma 27.04.2013.

petricj
petricj 🇸🇷

4.5

(313)

677 dokumenti

1 / 14

Toggle sidebar

Ova stranica nije vidljiva u pregledu

Ne propustite važne delove!

bg1
3/31/2010
1
PROGRAMIRANJE
Amir Hajdar
Teme
Nizovi
2
Klase i objekti
“Encapsulation”
“Inheritance”
“Polymorphism”
JVM garbage collector
JVM garbage collector
Klase i metode
3 kategorije podataka
CRC kartice
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe

Delimični pregled teksta

Preuzmite p03-Skripta-Programiranje-Građevina i više Rezime u PDF od Osnovi programiranja samo na Docsity!

PROGRAMIRANJE

Amir Hajdar

Teme

Nizovi

2

Klase i objekti

“Encapsulation”

“Inheritance”

“Polymorphism”

JVM garbage collectorJVM garbage collector

Klase i metode

3 kategorije podataka

CRC kartice

Nizovi (“arrays”)

Nizovi primitivnih tipova i nizovi objekata

M lti diMulti-dimenzionalni nizovi i l i i i

Indeks u niz uvijek počinje u 0-toj poziciji!

Primjer: int[] a; a = new int[10]; for(int i=0; i < a.length; i++){ a[i] = i * 10; }

Multidimenzionalni niz

int[][] b; b = new int[3][3]; for(int i=0; i < 3; i++){ for (int j=0; j < 3; j++){ b[i][j] = i; } }

0 0 0 1 1 1 2 2 2

b =

Napisati dio koda koji pravi jediničnu matricu, a zatim je ispisuje na monitoru.

Neki ciljevi kreiranja klase

Klasa je logička jedinica koja objedinjuje podatke i operacije nad istimoperacije nad istim

Napraviti klasu koja se može ponovo upotrijebiti (“reusability”)

Korisnik klase neće biti zainteresovan za rad klase onoliko koliko će biti zainteresovan za njenu upotrebu

Klasa će pružiti uslugu rada, ali zaštiti podatke klase

Kontrola vizibilnosti

Cilj: Zaštiti implementaciju klase i podatke unutar isteiste.

Encapsulation ” nam omogućava da sakrijemo detalje implementacije klase jer: † Korisnik klase ne treba da zna kako klasa funkcioniše † Korisnik klase ne treba da mijenja način funkcionisanja klase

“public” (interfejs) dio klase – vidljiv korisniku

“private” (implementacija) dio klase – ne vidljiv korisniku

“Encapsulation”

Algoritam korisnika može samo pristupiti javnim (“p blic”) dijelo ima objekta/klase(“public”) dijelovima objekta/klase

Algoritam korisnika može pozivati samo metode koje su definisane kao javne (“public”)

Algoritam korisnika ne može direktno pozivati privatne metode niti pristupiti privatnim podacima OSIM kroz korištenje javnih metoda

“Inheritance” - nasljeđivanje

Omogućava da definišemo novu klasu koristeći već postojepostojećć u klasu kako bi zadovoljili dodatneklas kako bi ado oljili dodatne zahtjeve

Superklasa – klasa od koje se nasljeđuje

Subklasa – klasa koja je nasljedila osobine

ObjektObjekt

Adresa

Kućna Adresa Biznis Adresa

Komponente klase

Atributi ili polja (“attributes” or “fields”) – čuvaju vrijednosti smještene u podacimarijednosti smještene podacima

“state” objekta – trenutno stanje svih vrijednosti u jednom objektu

Operacije (procedure i funkcije) ili metode – operacije koje se mogu vršiti nad podacima klase

Atributi i metode mogu biti “private” ili “public”

Primjer (najjednostavnije) klase

14

heading public class praznaKlasa

body

Primjer metode

heading “return” tip parametri naziv metode modifikatori ... private static int naKvadrat(int broj) { int temp; block

modifikatori return tip parametri

... return broj * broj; } ...

block

Metode (funkcije i procedure)

Java metoda može vratiti: † 1 vrijednost (koristeći return comandu) Niti j d ij d t ( id t d )

parametri † Niti jednu vrijednost (void metoda) public static int stepenovati (int baza, int eksponent) { int rezultat; result = 1; while (eksponent > 0){ rezultat = rezultat * baza; eksponent-- ; } return result; //u slu č aju void metode, umjesto prethodne linje, pisalo //bi samo return; }

3 kategorije podataka

  1. Instance ” podaci: interno predstavljanje objekta kojekoje čč uva stanje objektaa stanje objekta
  2. Class ” podaci: podaci kojima svi objekti klase mogu pristupiti
  3. Local ” podaci: podaci koji se koriste za ispravno izvršenje metoda

“Instance” podaci

public class Osoba {{ // Instance varijable String ime; String prezime; Char spol;

... }

“Class” podaci

public class Osoba {{ // Class konstanta static final String PUNCT = “, ”;

... }

“static” označava da atribut pripada klasi a ne samo jednom objektu

“Local” podaci

public int uporediSaImenom(Osoba drugaOsoba) {{ int result; // Local variable

... return result; }

Lokalni podaci su uništeni (Lokalni podaci su uništeni ( deallocated ) nakon izvršenja“deallocated”) nakon izvršenja metode

“Classes”, “Responsibilities”, “Collaborations”

“CRC card”- tehnika razvoja objekt-orijentiranih rješenjarješenja

Svaka kartica izlistava klasu, njene obaveze i načine komunikacije

CRC kartica

Class Name:Class Name: Superclass:Superclass: Subclasses:Subclasses:

Responsibilities Collaborations

CRC kartica za primjer adrese

Class Name: Superclass: Subclasses: AdresaAdresa ObjectObject KucnaAdresaKucnaAdresa, PoslovnaAdresa Responsibilities Collaborations Inicijalizacija Name: Name (ime, grad, drzava, pos_broj) Znanje imena Name: Ime i prezime Znanje grada None Znanje države None Znanje poštanskog broja None