Upload
samantha-horton
View
45
Download
0
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
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ć
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.
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.
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.
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.
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
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.
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.
Primer preklapanja operatoraPrimer preklapanja operatora