Atšķirība starp klasi un interfeisu

Galvenā atšķirība - klase vs interfeiss
 

Objektorientētā programmēšana (OOP) ir izplatīta programmatūras attīstības paradigma. Tas palīdz ieviest reālās pasaules scenārijus programmēšanā, izmantojot klases un objektus. Klase ir objekta izveidošanas plāns. Programmētājs var izveidot klasi ar īpašībām un metodēm. Students un skolotājs ir objekti. Objekta izveidošana ir pazīstama kā momentācija. OOP izmanto arī saskarnes. Saskarnes un klase var šķist līdzīgas, taču tām ir atšķirība. Šajā rakstā ir apskatīta atšķirība starp klasi un interfeisu. galvenā atšķirība starp klasi un interfeisu tas ir klase ir atsauces tips, kas ir projekts objekta izgaismošanai, savukārt saskarne ir atsauces tips, ko nevar izmantot objekta izgatavošanai..

SATURS

1. Pārskats un galvenās atšķirības
2. Kas ir klase
3. Kas ir interfeiss
4. Klases un interfeisa līdzības
5. Salīdzinājums blakus - klase un interfeiss tabulas formā
6. Kopsavilkums

Kas ir klase?

OOP viss tiek uzskatīts par objektu. Objektu nav iespējams izveidot bez klases. Klase ir objekta izveidošanas plāns. Būvējot māju, arhitekts sastāda plānu. Plāns ir līdzīgs klasei. Māja ir līdzīga objektam. Klase ir objekta celtniecības plāns. Objekts ir tas, kas tiek izveidots, izmantojot klasi.

Klase satur īpašības un metodes. Studentam var būt tādas īpašības kā vārds, pakāpe, indeksa numurs. Studentam var būt tādas metodes kā lasīšana, pastaigas, studijas. Tiek izveidota klase ar nepieciešamajām īpašībām un metodēm.

Klases izveides daudzās programmēšanas valodās sintakse ir šāda. Tas tiek izveidots, izmantojot atslēgvārdu klasi.

klase klases_vārds

// īpašības

//metodes

Programmēšanas valodas, piemēram, C # un Java, ievēro līdzīgu sintakse, lai izveidotu objektu, izmantojot klasi. Pieņemsim, ka klases nosaukums ir students.

Students s1 = jauns students ();

Šis s1 ir objekts. Īpašībām atmiņas piešķiršanai tiek izmantots “jaunais” atslēgvārds. Klasei ir arī konstruktors, lai inicializētu īpašības vai mainīgos.

Klases dalībniekiem, piemēram, īpašībām un metodēm, ir piekļuves modifikatori. Piekļuves specifikatori apraksta šo dalībnieku piekļuvi un redzamību citām klasēm. Klases dalībniekiem var būt piekļuves specifikatori, piemēram, publiski, privāti un aizsargāti. Sabiedrības locekļi ir pieejami citām klasēm. Privātie biedri ir pieejami tikai klasei. Aizsargātie locekļi ir pieejami klasē un attiecīgajās apakšklasēs.

Kas ir interfeiss?

Abstrakcija ir uz objektu orientētas programmēšanas pīlārs. Tas ir slēpt ieviešanas detaļas un parādīt funkcionalitāti lietotājam. Abstrakcija tiek panākta, izmantojot abstraktas klases un saskarnes. Abstraktajai metodei nav ieviešanas. Klasi, kurā ir vismaz viena abstrakta metode, sauc par abstraktu klasi.

Ja ir divas abstraktas klases, jāīsteno šajās klasēs deklarētās metodes. Šo metožu ieviešanai tiek izmantota jauna klase. Ja abām klasēm būtu viena un tā pati metode, tas varētu radīt neskaidrības problēmu. Tāpēc programmēšanas valodām, piemēram, Java un C #, ir interfeiss.

Saskarnēs ir tikai metožu deklarācija. Īstenošanas metodes nav. Objektu izveidošanai nevar izmantot arī saskarnes. Tos izmanto vairāku mantojumu atbalstam un koda nostiprināšanai.

Interfeisa sintakse ir šāda. Interfeiss izmantojiet atslēgvārdu “interfeiss”.

interfeisa interfeisa_vārds

tipa metode1 (parametru_saraksts);

tipa metode2 (parametru_saraksts);

Saskaņā ar iepriekš minēto saskarnēm ir tikai deklarācija. Nav definīcijas. Tātad saskarnes nevar objektus atdzīvināt. Tas sniedz tikai abstraktu skatījumu uz to, kas ir saskarne. Saskarnē deklarētās metodes var īstenot viena vai vairākas klases. Klase saskarnes ieviešanai izmanto atslēgvārdu “implement”. Skatiet zemāk piemēru, kas rakstīts, izmantojot Java.

01. attēls. Programma, izmantojot saskarnes

Saskaņā ar iepriekšminēto programmu, A un B ir saskarnes. Saskarnei A ir metodes deklarācija, kas ir summa (). B saskarnei ir metodes deklarācijas apakšdaļa (). C klase realizē abas saskarnes, kas ir A un B. Tāpēc C klase nosaka gan sum (), gan sub () metodes. Pēc C tipa objekta izveidošanas ir iespējams izsaukt abas metodes sum () un sub ().

Interfeisa iekšienē deklarētajām metodēm vienmēr jābūt publiskām, jo ​​ieviešanas klases tās definē. Saskarni var mantot arī no citas saskarnes.

Kādas ir klases un interfeisa līdzības??

  • Abi ir atsauces veidi.
  • Abi ir saistīti ar objektu orientētu programmēšanu.

Kāda ir atšķirība starp klasi un interfeisu?

Klase vs interfeiss

Klase ir atsauces tips, kas ir objekta izveides plāns. Saskarne ir atsauces tips, kuru nevar uzreiz realizēt.
 Objekta in situācija
Klases tiek izmantotas objekta izgaismošanai. Saskarni nevar realizēt, jo metodes nespēj veikt nekādas darbības.
Konstruktors
Klase satur konstruktoru, lai inicializētu mainīgos. Interfeiss nesatur konstruktoru, jo tie gandrīz nav inicializējami mainīgie.
 Atslēgvārds
Klase izmanto atslēgvārdu “klase”. Interfeiss izmanto atslēgvārdu “interfeiss”.
Piekļuves specifikators
Klases dalībnieki var būt privāti, publiski un aizsargāti. Saskarnes dalībniekiem vienmēr jābūt publiskiem, jo ​​ieviešanas klases tos definē.

Kopsavilkums - klase vs interfeiss

Klases un saskarnes tiek plaši izmantotas objektorientētā programmēšanā. Atšķirība starp klasi un saskarni ir tāda, ka klase ir atsauces tips, kas ir objekts, kas pamudina, un interfeiss ir atsauces tips, ko nevar izmantot objekta izgatavošanai. Klase var ieviest daudzas saskarnes. Bet tas var pagarināt tikai vienu superklases līmeni. Interfeiss var mantot daudzas saskarnes, bet nevar būt ieviešana. Abiem ir sava nozīme. Programmētājs tos var izmantot, izstrādājot programmatūru.

Lejupielādējiet PDF klase vs interfeiss

Varat lejupielādēt šī raksta PDF versiju un izmantot to bezsaistes vajadzībām, kā norādīts citēšanas piezīmē. Lūdzu, lejupielādējiet šeit PDF versiju. Atšķirība starp klasi un interfeisu

Atsauce:

1.tutorialspoint.com. “Java objekts un klases.”, The Point. Pieejams šeit 
2.navinreddy20. Javas saskarne ar Java piemēru, autors Navin Reddy, 2012. gada 11. decembris. Pieejams šeit