9
ENKAPSULACIJA,PREKLAPANJE ENKAPSULACIJA,PREKLAPANJE OPERATORA U C# OPERATORA U C# Milan G Milan G ičić ičić Đorđe Đorđević Đorđe Đorđević Marko Andrejević Marko Andrejević Aleksandar Disić Aleksandar Disić Miloš Đorđević Miloš Đorđević Vladica Vučić Vladica Vučić

ENKAPSULACIJA,PREKLAPANJE OPERATORA U C#

Embed Size (px)

DESCRIPTION

ENKAPSULACIJA,PREKLAPANJE OPERATORA U C#. Milan G ičić Đorđe Đorđević Marko Andrejević Aleksandar Disić Miloš Đorđević Vladica Vučić. ENKAPSULACIJA. U  programskom jeziku ,  enkapsulacija  se odnosi na jedan od dva povezana ali različita pojma, a ponekad i na njihovu kombinaciju: - PowerPoint PPT Presentation

Citation preview

Page 1: ENKAPSULACIJA,PREKLAPANJE OPERATORA U C#

ENKAPSULACIJA,PREKLAPANJE ENKAPSULACIJA,PREKLAPANJE OPERATORA U C#OPERATORA U C#

Milan GMilan GičićičićĐorđe ĐorđevićĐorđe ĐorđevićMarko AndrejevićMarko AndrejevićAleksandar DisićAleksandar DisićMiloš ĐorđevićMiloš ĐorđevićVladica VučićVladica Vučić

Page 2: ENKAPSULACIJA,PREKLAPANJE OPERATORA U C#

ENKAPSULACIJAENKAPSULACIJA

U U programskomprogramskom jezikujeziku, , enkapsulacijaenkapsulacija se  se odnosi na jedan od dva povezana ali odnosi na jedan od dva povezana ali različita pojma, a ponekad i na njihovu različita pojma, a ponekad i na njihovu kombinaciju:kombinaciju:Mehanizam jezika za zabranu pristupa Mehanizam jezika za zabranu pristupa nekim od komponenti nekim od komponenti objektaobjekta..Konstrukt jezika koji olakšava grupisanje Konstrukt jezika koji olakšava grupisanje podataka i metoda (ili drugih funkcija) koje podataka i metoda (ili drugih funkcija) koje operišu nad tim podacima.operišu nad tim podacima.

Page 3: ENKAPSULACIJA,PREKLAPANJE OPERATORA U C#

ENKAPSULACIJAENKAPSULACIJA

Enkapsulacija, jedan od važnih principa OOP, je postupak objedinjavanja stanja i ponašanja objekta u jednu celinu. Tako organizovane objekte je lakše kontrolisati i onemogućiti neovlašćen pristup. Korisnici sa objektom komuniciraju samo kontrolisano, pomoću javnih metoda i ne mogu neovlašćeno menjati unutrašnja stanja objekta. Samo internim metodima objekta omogućen je pristup tim stanjima. Ovakav pristup omogućava lakše organizovanje tima programera u

razvijanju istog projekta. Svaki član tog tima lako može koristiti sve objekte

koji su drugi članovi tima razvili, poznavajući samo načine komunikacije sa

objektima, bez poznavanja njihove realizacije.

Page 4: ENKAPSULACIJA,PREKLAPANJE OPERATORA U C#

ENKAPSULACIJAENKAPSULACIJA

Posmatrajmo klasu Dugme(button) na računaru kažemo da su oni instanca klase Dugme. Svi oni mogu da prime iste poruke. Na njih se primenjuju isti metodi (npr. dugme je pritisnuto...), imaju istu funkcionalnost. Funkcionalnosti koje imaju dobijene su iz opšte klase Dugme.

Page 5: ENKAPSULACIJA,PREKLAPANJE OPERATORA U C#

PREKLAPANJE OPERATORAPREKLAPANJE OPERATORA

Preklapanje operatora(operator overloading)Preklapanje operatora(operator overloading)

predstavlja redefinisanje postojecih operatora predstavlja redefinisanje postojecih operatora zbog potrebe da na specifican nacin rade sa zbog potrebe da na specifican nacin rade sa novim tipovima podataka(npr.klasnim tipovima)novim tipovima podataka(npr.klasnim tipovima)

omogucava da se ugradjeni operatori prilagode omogucava da se ugradjeni operatori prilagode tako da izvrsavaju odredjenu akciju nad tako da izvrsavaju odredjenu akciju nad objektima klasnih tipova.objektima klasnih tipova.

Page 6: ENKAPSULACIJA,PREKLAPANJE OPERATORA U C#

PREKLAPANJE OPERATORAPREKLAPANJE OPERATORA

Moguce je izvrsiti preklapanje skoro svih Moguce je izvrsiti preklapanje skoro svih operatora.operatora.

Preklapanje operatora treba pazljivo Preklapanje operatora treba pazljivo koristiti,zbog mogucih nezeljenih efekata koristiti,zbog mogucih nezeljenih efekata

Page 7: ENKAPSULACIJA,PREKLAPANJE OPERATORA U C#

OSNOVNA PRAVILA OSNOVNA PRAVILA PREKLAPANJA OPERATORAPREKLAPANJA OPERATORA

C# dozvoljava preklapanje operatora kao C# dozvoljava preklapanje operatora kao sto dozvoljava I preklapanje imena sto dozvoljava I preklapanje imena

funkcija.funkcija.

Princip preklapanja omogucava da se Princip preklapanja omogucava da se definisu nova znacenja operatora za definisu nova znacenja operatora za

korisnicke tipove.korisnicke tipove.

Page 8: ENKAPSULACIJA,PREKLAPANJE OPERATORA U C#

OSNOVNA PRAVILA OSNOVNA PRAVILA PREKLAPANJA OPERATORAPREKLAPANJA OPERATORAPostoje neka ogranicenja u preklapanju Postoje neka ogranicenja u preklapanju operatora:operatora:ne mogu direktno da se preklope svi ne mogu direktno da se preklope svi operatori,neki ne mogu nikako;operatori,neki ne mogu nikako;ne mogu da se redefinisu znacenja operatora za ne mogu da se redefinisu znacenja operatora za privitivne(standardne)tipove podataka;privitivne(standardne)tipove podataka;Ne mogu da se uvode novi simboli za operatore;Ne mogu da se uvode novi simboli za operatore;Ne mogu da se menjaju osobine operatora koje Ne mogu da se menjaju osobine operatora koje su ugradjene u jezik: n-arnost,prioritet i su ugradjene u jezik: n-arnost,prioritet i asocijativnost.asocijativnost.

Page 9: ENKAPSULACIJA,PREKLAPANJE OPERATORA U C#

Primer preklapanja operatoraPrimer preklapanja operatora