RačunalaSoftver

Apstraktne klase i metode: opis, karakteristike i svojstva. Ono što se razlikuje od apstraktne klase sučelje

Svatko tko ima bilo malo znanja u programiranju, pitajući se zašto postoji apstraktna osnovna klasa. Koja je njihova svrha? Kako stvoriti apstraktne klase? Koje su prednosti oni nude u praksi? Zašto su potrebne u programiranju i neke značajke njihovu provedbu treba uzeti u obzir?

apstraktne klase

Tako je u programskom zove kôd jedinice na temelju kojih se predmeti ne mogu biti kreirana. Zabilježeno je da je ova klasa nasljednika ne može biti apstraktna. Dakle, stvaranje predmeta na temelju njih je sasvim moguće. Ako uzmemo u obzir primjer Java, konstruiramo model koji možemo opisati graditelji u klasi A. No, kako ih koristiti, ne možemo. Izlaz iz ove situacije je da se proglasi bilo koju varijablu referencu. I morate biti jasno definirana tako da bude usmjerena na objekt klase A. To je kako se to može učiniti? To će nam pomoći donijeti. Treba imati na umu da roditelj klasa uvijek se smatra više nego svestran potomak. U mnogim programskim jezicima se koristi za automatsko donijeti. Ali, ako ne postoji povjerenje u prisustvu takvog mehanizma, onda morate izričito upućivanje na objekt.

apstraktne metode

Što su oni? Sažetak poziva one metode koje nisu provedene u ovoj klasi. Dakle, nakon zagrade (koji navodi argumente koji se koriste u ovome) ne daju oblikovanog otvora (nakon čega se nalazi blok opis metode), a samo jedan zarez. Dakle, u ovom slučaju, nema informacija o tome što čini. Ovdje je pitanje može se pitao: „A što je metoda bez provedbe?” Uostalom, on je ne smije koristiti! Naravno, u razredu, gdje je opisano, to nije moguće. No, ako uzmemo u obzir situaciju iz perspektive potomak, to može biti pozvan. I to će raditi na određeni opis na raspolaganju u ovoj klasi.

Značajke apstraktne metode

Postoje ograničenja u njihovom upotrebom. Razmotrimo primjer Java programskom jeziku. Tu je uvjet ako je klasa ima barem jedan takav način, to mora biti apstraktna. A u svakom slučaju uputno je koristiti takvu konstrukciju? Idemo razumjeti ovo s primjerom klase kućne ljubimce. Za početak da shvate da ne postoji zvuk koji su objavljeni. Dakle, u najopćenitijem razredu nije postavljen zvuka provedbu metode. Ali stvorio tijelo koje osim putem blokova za njega. A u nastavku, pri izradi pas klase, mačku ili hrčak će se propisati samo jedan način za to, u okviru kojih će biti objavljen na svim značajkama.

sučelje

U programiranju stvorio mnoge alate čija je svrha - kako bi se ljudi napraviti kvalitetan proizvod. A tema razmatra treba dati na ovaj aspekt, a to svi znaju razliku apstraktne klase iz sučelja. Dakle, zadnja opcija je da ne može biti svojstva i metode nisu definirani tijelo. Pregledom razlika između apstraktne klase iz sučelja, trebao boraviti više na jednu određenu. Dakle, prvi je naslijedio, a drugi - ostvaruje. Neiskusni osoba to može činiti nevažnom. No, činjenica je da može biti naslijeđena samo jedan razred, i shvatio - koliko je potrebno. To je ono što se razlikuje od sučelja apstraktne klase. Java je i dalje značajke koje se mogu opisati samo apstraktna javna metode i statičkih konstante. No, u isto sučelja može biti naslijeđena. Potrebno je naglasiti da su operatori koriste se javnosti putem javnosti.

Višestruki Baština sučelja

Ova značajka nije dostupna za nastavu u mnogim programskim jezicima (npr Java smatraju kod nas). To je zbog brojnih problema. Kao takve nejasnoće ukazuju na to da se javljaju u nizu. To je bio razlog za uvođenje višestruke sučelja nasljeđivanja. To djelomično rješava postojeće probleme, ali ne svi. Dakle, zahvaljujući načelima kućištima i polimorfizam, sučelja može se uspješno provesti u različitim klasama prema različitim metodama (iako će oni imaju isto ime). Ali ne zaboravite o postojećim problemima. Dakle, kada se radi s više sučelja morat će se uvijek odrediti koji imamo na umu. Također, problemi će biti i kada pokušate raditi s istim imenom na dva načina - u ovom slučaju, neće moći iskoristiti. Stoga je u takvim slučajevima potrebno je voditi brigu o prisutnosti ukupne prodaje.

sažetak podataka

Ovaj koncept je ključ za program. U tom slučaju, prema apstrakciji neovisne revizije i razumjeti razdvajanje sučelja i implementacije. Pogledajmo primjer. Imamo televiziju, što je predmet ili modul. Ona ima sučelje. Kao takvi, oni su kontrole, kao i zvuk i slika. Što više savršen sučelje koristi se, ugodnije TV u upotrebi. Možemo prebacivanje između programa pritiskom na bilo koju tipku. U tom slučaju, nema potrebe razmišljati o fizikalnim procesima u TV. Voditi brigu o njima stručnjaci, koji skupljaju uređaj. Volimo ljudi su zainteresirani samo za svojstva. Po povratku u programiranju, možemo reći da su na sličan sučelje i provedbi. Isto tako, ako je osoba sigurna u svoje znanje, on može „ukloniti” pokriti naše hipotetski TV i da se poboljša. Iako to može dovesti do lokalne uspjeha, u većini slučajeva, krajnji rezultat je negativan. Dakle, u podržanog programskog zabrane pristupa i sakriti unutarnje komponente apstraktnih podataka. Princip ovog mehanizma pruža način da se spriječi namjerno ili nenamjerno prilagodbu unutarnje komponente. A kada se govori o apstraktnim tipovima podataka, srednja skupa skupa operacija koje se mogu obavljati na njih.

objekti

Već smo vidjeli apstraktne klase i sučelja u cjelini i općenito. a sada neka detaljno naše znanje. Za početak plaća objekte pozornost. Ispod njih, u cjelini, svjesni stvarnosti okoliša koji postoji u prostoru i vremenu. No, formalno identificirati objekte u sklopu programa je teško (s filozofskog i teorijskog aspekta). Dakle, to je zbog svojih svojstava. Kao primjer, sljedeće: Objekt može jedinstveno identificirati (s jedinstvenim imenom), to je u određenom stanju i koristi određeni obrazac ponašanja.

baština

Budući da se programiranje temelji na hijerarhijskom stablu izgradnji odnosa između objekata, postavlja se pitanje o tome da su glavne osobine vrste roditeljskih kod knjižnice su prenesene. Pod nasljeđivanju razumjeti odnos kada netko se ponavlja ponašanje i strukturu nešto drugo. U svakodnevnom životu, može se naći posvuda. Takav je odgođen i programiranje relativno apstraktne elemente. Za usporedbu, činjenica da ne postoji takvo tijelo kao ptica. To je sažetak ime. Kao poseban primjer dovesti čaj, Nightingale ili vrapca. Zahvaljujući baštinu možemo koristiti biblioteke klasa, kao i da ih razviti za određeni program. Ovaj alat omogućuje nam stvaranje novih objekata, istovremeno dodavanje ili mijenjanje svojstava već stvorio. Nasljednik postaje sve metode i polja svoga pretka i stječe vlastite atribute, ako je to potrebno. S obzirom na činjenicu da postoje apstraktni elementi i princip baštine, postoji obilje mogućnosti za modificiranje unutar objektno-orijentiranog programiranja. Osim toga, omogućuje fleksibilan pristup u rješavanju problema. Kada naslijediti novu klasu prenesenih podataka i funkcija.

polimorfizam

Potrebno je primijeniti istu funkciju za rješavanje različitih vrsta problema. U ovom slučaju daje prisutnost mogućnost različitog djelovanja, sadržaj koji će ovisiti o vrsti objekta s kojima se rad obavlja. Pod polimorfizma razumjeti svojstva elemenata koji imaju zajednički roditelj, da obavljaju slične semantičke smislu problema na različite načine. Skrećemo analogiju sa životinjama. Tu je akcija - pokrenuti. Svi znamo kako se to događa. No, različite životinje (lav, slon, čimpanza, krokodil, kornjača) ova akcija će se provoditi na različite načine. U tom slučaju, njihovo kretanje je odgovoran programer, koji po potrebi može uzrokovati za određeni slučaj određena rutina, algoritama i provedbi ga uspješno. To je učinjeno pomoću skupa metoda. U isto vrijeme u svakoj klasi programer specificira koji objekt svojstva koja su svojstvena. Promjena nešto u potomstvu, možete postići određenu, željenu radnju u ovom slučaju. Takav efekt se zove polimorfizam objekata. Općenito, apstraktna klasa je vrlo koristan alat za programiranje.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 hr.unansea.com. Theme powered by WordPress.