Kas ir abstraktā klase C # valodā? | Definīcija, īpašības un piemēri

Abstrakcija programmēšanā attiecas uz nevajadzīgas, kaut arī ļoti svarīgas informācijas slēpšanu un tikai noteiktas atslēgas vai nepieciešamās informācijas padarīšanu lietotājam redzamu. Tas ir iespējams, izmantojot abstraktās klases.

Abstraktā klase C # būtībā ir klase, kas neļauj izveidot objektu. “Abstract” ir atslēgvārds vai modifikators, kas padara šo konkrēto klasi vai metodi abstraktu vai ierobežotu. Abstraktai klasei var piekļūt, tikai izmantojot mantošanu no citas klases.

Atslēgas

  1. Abstraktās klases ir nepilnīgas klases, kuras nevar izveidot, bet kalpo par pamatu citiem, no kurām mantot.
  2. Tie satur vismaz vienu virtuālu funkciju, kas nozīmē, ka tai nav ieviešanas, un tā ir jādefinē jebkurai atvasinātai klasei.
  3. Abstraktajām klasēm var būt dalībnieku mainīgie un dalībnieku funkcijas ar ieviešanu, taču tām nevar piekļūt, izmantojot abstraktās klases objektus.

Abstraktās klases īpašības un komponenti C#

Lai varētu uzsākt abstraktu klasi vai tai piekļūtu, ir jābūt noteiktiem faktoriem. Tie ir uzskaitīti šādi.

  1. Abstrakta klase izveido bāzes klasi, kurai parasti piekļūst vairākas atvasinātas klases. Programmētājiem ir jāizveido atvasināta klase, lai izmantotu vai ieviestu abstraktu klasi.
  2. Tādējādi abstraktā klase ir jāpārmanto apakšklasēm, kas var pat ignorēt funkciju.
  3. Katrai abstraktai klasei ir nepieciešama vismaz viena abstraktā metode.

Abstraktas klases piemērs C#

Tā kā mehānisms ir sarežģīts un saprotams tikai tiem, kas pārzina programmēšanu valoda, labāk ir sākt ar vienkāršu piemēru, lai palīdzētu izskaidrot jēdzienu.

Arī lasīt:  Abstraktā klase pret interfeisu C #: atšķirība un salīdzinājums

Pieņemsim, ka pastāv klase “Tree” ar esošu izstrādātu metodi, kas pazīstama kā “tips”. Nekas cits nav definēts un cita konkrēta informācija netiek sniegta – nav zināms ne koka veids, ne iespējamie veidi.

Ja ir pieejams konkrēts koka paraugs, tad tiek izveidota atsevišķa klase, pārmantojot pamatklasi Tree. Ideja ir tāda, ka jaunā klase, teiksim Pine vai ozols, nevar modificēt bāzes klases, tas ir, koka, konstrukciju vai definīciju. Tam ir jāizveido sava klase, kas iegūta no klases Tree, un jādefinē cita metode, kas mantota no bāzes.

Abstraktās klases priekšrocības C # valodā

  1. Lai gan apakšklases var izvēlēties ieviest vai ignorēt abstraktu klasi, noteikti izmaiņas var izveidot, kas liek īstenot noteiktu funkciju.
  2. Tādējādi, veidojot abstraktu klasi, pastāv liela elastība attiecībā uz to, kuras metodes obligāti jāīsteno.
  3. Programmētājs var izvēlēties, cik abstraktu metožu viņš vēlas abstraktā klasē. Ir iespējams arī rakstīt kodu, neiekļaujot abstraktas metodes.
  4. Abstrakta klase ir jādefinē tikai vienu reizi, un tai var piekļūt vai atvasināt no tik daudz reižu, cik nepieciešams.
  5. Abstraktā klase ir ļoti noderīga, ja ir tādu klašu kopums, kurām ir zināma līdzības pakāpe, bet kuras atšķiras abstraktās klases īstenošanā.

Abstraktās klases trūkumi C#

  1. Abstraktu klasi var pievienot klašu hierarhijai tikai tad, ja nav abstraktu klašu.
  2. Uz jebkuras abstraktas klases objektiem var būt tikai atsauces, tos nevar izveidot.
  3. Pat ja abstraktās klases nevar izveidot, tā nepieļauj statiskus mainīgos vai metodes.
Atsauces
  1. https://books.google.co.in/books?hl=en&lr=&id=UbJa11wLcqYC&oi=fnd&pg=PA125&dq=Abstract+Class+in+C%23&ots=y9lmboLlHj&sig=kk5oYAJSHpmo-FyHphcAlkUh4cc&redir_esc=y#v=onepage&q=Abstract%20Class%20in%20C%23&f=false
  2. https://books.google.co.in/books?hl=en&lr=&id=-w9ftEtwPGwC&oi=fnd&pg=PP8&dq=Abstract+Class+in+C%23&ots=XXCx6-5nlm&sig=CYfs0myaTnm1anSz4QUGcZ65uS4&redir_esc=y#v=onepage&q=Abstract%20Class%20in%20C%23&f=false
Arī lasīt:  Discord vs Google Meet: atšķirība un salīdzinājums

Pēdējo reizi atjaunināts: 11. gada 2023. jūnijā

1. punkts
Viens pieprasījums?

Esmu pielicis tik daudz pūļu, rakstot šo emuāra ierakstu, lai sniegtu jums vērtību. Tas man ļoti noderēs, ja apsverat iespēju to kopīgot sociālajos medijos vai ar draugiem/ģimeni. DALĪŠANĀS IR ♥️

23 domas par tēmu “Kas ir abstraktā klase C#? | Definīcija, īpašības un piemēri”

  1. Rakstā ir labi izklāstītas priekšrocības un trūkumi. Visaptveroša atsauce ikvienam, kas vēlas uzzināt par abstraktajām nodarbībām C#.

    atbildēt
  2. Šajā rakstā ir ne tikai izceltas abstraktās klases priekšrocības, bet arī trūkumi C # valodā. Patiešām rūpīga analīze!

    atbildēt
  3. Man šķiet ļoti intriģējoša abstraktas klases veidošanas elastība. Šajā rakstā skaidri un saprotami izklāstīti gan plusi, gan mīnusi.

    atbildēt

Leave a Comment

Vai vēlaties saglabāt šo rakstu vēlākam laikam? Noklikšķiniet uz sirds apakšējā labajā stūrī, lai saglabātu savu rakstu lodziņā!