Objektinis programavimas (OOP) yra įprasta programinės įrangos kūrimo paradigma. Tai padeda pritaikyti realaus pasaulio scenarijus programavimui naudojant klases ir objektus. Klasė yra objekto sukūrimo projektas. Programuotojas gali sukurti klasę su savybėmis ir metodais. Studentas ir mokytojas yra objektai. Objekto sukūrimas yra žinomas kaip akimirksniu. OOP taip pat naudoja sąsajas. Sąsajos ir klasė gali atrodyti panašios, tačiau jos skiriasi. Šiame straipsnyje aptariamas skirtumas tarp klasės ir sąsajos. pagrindinis skirtumas tarp klasės ir sąsajos yra tai klasė yra atskaitos tipas, kuris yra objekto pagreitinimo projektas, o sąsaja yra nuorodos tipas, kurio negalima naudoti objekto pagreitinimui.
1. Apžvalga ir svarbiausias skirtumas
2. Kas yra klasė
3. Kas yra sąsaja
4. Klasės ir sąsajos panašumai
5. Šalutinis palyginimas - lentelės formos klasė ir sąsaja
6. Santrauka
OOP viskas laikoma objektu. Neįmanoma sukurti objekto be klasės. Klasė yra objekto sukūrimo projektas. Statant namą architektas nubraižo planą. Planas panašus į klasę. Namas panašus į objektą. Klasė yra objekto pastatymo planas. Objektas yra tai, kas sukurta naudojant klasę.
Klasėje pateikiamos savybės ir metodai. Studentas gali turėti tokias savybes kaip vardas, pavardė, laipsnis, rodyklės numeris. Studentas gali turėti tokius metodus kaip skaitymas, vaikščiojimas, studijavimas. Sukuriama klasė, turinti reikiamas savybes ir metodus.
Klasės kūrimo sintaksė daugeliu programavimo kalbų yra tokia. Jis sukurtas naudojant raktinių žodžių klasę.
klasė klasės_vardas
// savybės
// metodai
Programavimo kalbos, tokios kaip C # ir Java, laikosi panašios sintaksės, kad sukurtų objektą naudojant klasę. Tarkime, kad klasės pavadinimas yra Studentas.
Studentas s1 = naujas studentas ();
Tai s1 yra objektas. „Naujas“ raktinis žodis yra naudojamas nuosavybėms paskirstyti. Klasė taip pat turi konstruktorių savybėms ar kintamiesiems inicijuoti.
Tokie klasės nariai, kaip savybės ir metodai, turi prieigos modifikatorius. Prieigos specifikatoriai apibūdina tų narių prieinamumą ir matomumą kitoms klasėms. Klasės nariai gali turėti prieigą prie specifikacijų, tokių kaip vieša, privati ir apsaugota. Visuomenės narius gali pasiekti kitos klasės. Privatūs nariai gali naudotis tik klase. Apsaugoti nariai yra prieinami klasės ir atitinkamų poklasių viduje.
Abstrakcija yra objektinio programavimo ramstis. Tai yra informacijos apie įdiegimą slėpimas ir funkcionalumo rodymas vartotojui. Abstrakcija pasiekiama naudojant abstrakčias klases ir sąsajas. Abstraktus metodas neturi įgyvendinimo. Klasė, kurioje yra bent vienas abstraktus metodas, vadinama abstrakčia klase.
Kai yra dvi abstrakčios klasės, turėtų būti įgyvendinti tose klasėse deklaruojami metodai. Šiems metodams įgyvendinti naudojama nauja klasė. Jei abi klasės naudotų tą patį metodą, tai gali sukelti dviprasmybių problemą. Todėl programavimo kalbos, tokios kaip Java ir C #, turi sąsają.
Sąsajose yra tik metodų deklaracija. Nėra jokio diegimo metodo. Taip pat sąsajos negali būti naudojamos kuriant objektus. Jie naudojami palaikyti kelis palikimus ir apsaugoti kodą.
Sąsajos sintaksė yra tokia. Sąsaja naudokite raktinį žodį „sąsaja“.
sąsajos sąsajos_pavadinimas
tipo metodas1 (parametro sąrašas);
tipo metodas2 (parametro sąrašas);
Remiantis tuo, kas išdėstyta aukščiau, sąsajos turi tik deklaraciją. Nėra apibrėžimo. Taigi sąsajos negali akimirksniu atkurti objektų. Tai tik pateikia abstrakčią sąsajos vaizdą. Sąsajoje deklaruotus metodus gali įgyvendinti viena ar kelios klasės. Klasė sąsajai įgyvendinti naudoja raktinį žodį „įgyvendinti“. Žemiau pateiktą pavyzdį, parašytą naudojant „Java“.
01 paveikslas: Programa naudojant sąsajas
Pagal aukščiau pateiktą programą, A ir B yra sąsajos. A sąsaja turi metodo deklaraciją, kuri yra suma (). B sąsaja turi metodo deklaravimo sub (). C klasė įgyvendina abi sąsajas, kurios yra A ir B. Todėl C klasė apibrėžia ir sum (), ir sub () metodus. Sukūrus C tipo objektą, galima iškviesti abu metodus sum () ir sub ().
Sąsajos viduje deklaruojami metodai visada turi būti vieši, nes juos nustato apibrėžimo klasės. Sąsaja taip pat gali būti paveldėta iš kitos sąsajos.
Klasė prieš sąsają | |
Klasė yra atskaitos tipas, kuris yra objekto sukūrimo projektas. | Sąsaja yra nuorodos tipas, kurio negalima realizuoti. |
Objekto nustatymas | |
Klasė naudojama objektui pagreitinti. | Sąsaja negali būti pagreitinta, nes metodai negali atlikti jokių veiksmų. |
Konstruktorius | |
Klasėje yra konstruktorius, kad būtų galima inicijuoti kintamuosius. | Sąsajoje nėra konstruktoriaus, nes jie beveik neturi kintamųjų, kuriuos būtų galima inicijuoti. |
Raktažodžiai | |
Klasė naudoja raktinį žodį „klasė“. | Sąsaja naudoja raktinį žodį „sąsaja“. |
Prieigos specifikatorius | |
Klasės nariai gali būti privatūs, vieši ir saugomi. | Sąsajos nariai visada turėtų būti vieši, nes juos nustato apibrėžimo klasės. |
Klasės ir sąsajos yra plačiai naudojamos objektiniam programavimui. Skirtumas tarp klasės ir sąsajos yra tas, kad klasė yra atskaitos tipas, kuris yra objekto pagreitinimo projektas, o sąsaja yra nuorodos tipas, kurio negalima naudoti objekto pagreitinimui. Klasė gali įgyvendinti daugybę sąsajų. Bet tai gali pratęsti tik vieną superklasę. Sąsajoje galima paveldėti daug sąsajų, tačiau jos negali būti. Abu turi savo svarbą. Programuotojas gali juos naudoti kurdamas programinę įrangą.
Galite atsisiųsti šio straipsnio PDF versiją ir naudoti ją neprisijungus, kaip nurodyta citatos pastaboje. Atsisiųskite PDF versiją čia. Klasės ir sąsajos skirtumas
1.tutorialspoint.com. „Java objektas ir klasės“. Galima rasti čia
2.navinreddy20. „Java“ sąsaja su pavyzdžiu, „Java“, autorius Navinas Reddy, 2012 m. Gruodžio 11 d. Galima rasti čia