frankalinger0998 / 12-sucelja Goto Github PK
View Code? Open in Web Editor NEWThis project forked from vsite-csharp/12-sucelja
Smisao i korištenje sučelja.
This project forked from vsite-csharp/12-sucelja
Smisao i korištenje sučelja.
Sučelja ======= ImplementacijaSučelja --------------------- Primjer implementacije sučelja IComparable koje omogućava implicitno sortiranje elemenata, bez eksplicitnog navođenja metode za usporedbu. SmisaoSučelja ------------- Sučelja doprinose apstrakciji i omogućavaju slabiju uparenost. Primjer sortiranja liste objekata klase Osoba koja sadrži ime osobe i datum njena rođenja. Mogli bismo upotrijebiti metodu: List<T>.Sort() koja može sortirati samo elemente koji implementiraju IComparable sučelje. Zbog toga bi uvjet koji se koristi za sortiranje trebalo ugraditi u kod klase Osoba i lista bi uvijek bila sortirana prema tom uvjetu. Međutim, ako osobe želimo sortirati prema različitim uvjetima, tada ćemo upotrijebiti: List<T>.Sort(IComparer<T>) ili List<T>.Sort(Comparison(T)) koje omogućavaju sortiranje članova liste prema nekom vanjskoim uvjetu koji nije ugrađen u tip koji sortiramo. To omogućava da jednostavnom promjenom argumenta metode promijenimo uvjet sortiranja, a da pri tome ne mijenjamo kod klase Osoba niti klase List. DefinicijaImplementacijaSučelja ------------------------------- Sučelje se definira ključnom riječi interface te sadrži samo deklaracije metoda, svojstava i događaja. Tip koji implementira sučelje mora implementirati sve njegove članove ili je u protivnom tip apstraktan. VirtualniČlanovi ---------------- Ako se u baznoj klasi koja implementira sučelje član ne označi virtualnim, neće ga se moći pregaziti u iz nje izvedenim klasama. ImplicitnaExplicitnaPretvorba ----------------------------- Ako klasa implementira neko sučelje, moguća je implicitna pretvorba objekta u to sučelje. Ako klasa implentira više sučelja, moguća je eksplicitna pretvorba iz jednog u drugo sučelje. ImplementacijaIstoimenihČlanovaIzRazličitihSučelja -------------------------------------------------- Primjer kako se implementiraju metode s istim potpisom iz različitih sučelja. PodrazumijevanaImplementacijaSučelja -------------------------------------------------- Primjer kako se unutar sučelja može zadati i definicija metode te kako se onda ta metoda može pozvati.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.