DatoriProgrammēšana

Elementi Java objekta modelis: abstrakta klase, saskarne

Galvenā ideja abstraktu klasi ir ietverts šādos tēzēm: dažkārt nav nepieciešama kulinārijas nodarbības, kā arī "slapjo" formā. Šādi sagataves nevar tieši izmantot, (instantiate).

Kas ir abstrakts klases Java

Apsveriet citu piemēru. Ir Java abstrakta klase kalendārs java.util paketi. Tas nav īstenot konkrētu kalendāru, kas tiek izmantota, piemēram, Rietumeiropā un Austrumeiropā, Ķīnā, Ziemeļkorejā, Taizemē un tā tālāk D. Bet tas ir daudzas noderīgas funkcijas, piemēram, pievienojot dažas dienas, lai noteiktu datumu. Šīs funkcijas ir nepieciešamas jebkurā kalendārs ieviešanu. Tas ir iespējams, lai radītu kopiju abstraktu klasi.

Abstract klases, abstraktas Java metodes

Pieņemsim, ka jūs vēlaties, lai izstrādātu vairākus grafiskos elementus, piemēram, ar ģeometriskas formas: .. apli, taisnstūra, zvaigzne utt Un ir konteiners, kas tos vērš. Katrs izskatu komponents ir atšķirīgs, tāpēc atbilstošu metodi (pat tad, ja tā tiek saukta krāsu) tiek īstenota atšķirīgi. Tomēr katrs komponents ir daudz līdzību: .. Attēlā jāiekļauj lodziņā var būt krāsu būtu redzamas un neredzamas, uc Citiem vārdiem sakot, jums ir nepieciešams, lai izveidotu mātes klasi visiem šiem skaitļiem, kur katrs elements mantos vispārējie īpašības. Bet ko par krāsu metodi? Galu galā, mātes klase nav vizuāls attēlojums. Ja jums paziņot paint metodi katrā klasē atsevišķi, būs nepieciešami, lai analizētu to sastāvdaļu tiek apstrādāti, un pēc tam veikt vairākumu. Tāpēc metode jādeklarē abstrakts mātes klasē: metode iestatīt nosaukumu bez ķermeņa. Ķermenis katras iegūti klasē būs aprakstīt viņa paša. Java, abstrakta klase var ievadīt abstraktas metodes.

Ja klasē ir abstraktas metodes, klase ir abstrakta. Pirms vārds klase ievietot atslēgvārdu abstrakti, nosaukumu metodi - too. Pēc nosaukuma šāda metode ir nepieciešams likt semikolu. Java, abstrakts klasē nevar ražot kopijas. Ja mēs gribam aizliegt to izveidi, pat tad, ja nav nekādu abstrakts metodes klasē, klase var deklarēt abstrakts. Bet, ja klasē ir vismaz viens abstraktu metodi, klase ir abstrakts. Tas ir iespējams, lai klasē bija un abstrakts ir, un galīgs, un metode too. Metode nevar būt abstrakts, privātā, statiskā, dzimtā. Apakšklasi varētu pasludināt nav abstrakts un instantiate, tie ir jāīsteno visi abstraktās metodes vecākiem. Pati klase var izmantot savas abstraktas metodes.

piemērs:

  • abstract klase AClass {
  • sabiedriskā abstrakts spēkā metode (int a) ;
  • }
  • klase BClass paplašina AClass {
  • public void metode (int a) {
  • // ķermeņa
  • }

Atļautie mainīgie kā abstraktu klasi. Tie var attiekties uz ne-abstraktās bērnam klasē vai būt nulle.

Saskarnes Java - alternatīva vairākiem mantojumu

Java, nav vairākas mantojuma, jo tad ir kaut kādas problēmas. Klase nevar mantot no vairākām klasēm. Bet viņš var īstenot vairākas saskarnes.

Java saskarnes un abstraktās klases - jēdzieni ir līdzīgi, bet nav identiski. Interfeiss var deklarēt kā publisks, tad tas ir pieejams visiem, vai arī varat izlaist modifikatora sabiedrību, tad saskarne ir pieejama tikai tās iepakojuma. Anotācija atslēgvārds nav nepieciešams, jo interfeiss un tā ir abstrakta, bet jūs varat norādīt.

Saskarne deklarācija

Tas sākas ar galvu, un vispirms var doties uz atslēgvārdu sabiedrībai, tad - vārds interfeisu. Tad var būt vārds, paplašina un nodošanas saskarnes, no kuriem mantojis. Tas nav atļauts atkārtot, un tas ir iespējams, veidojot ciklisku attiecību mantojuma attiecības. Tad nāk interfeiss ķermenis, slēgta cirtaini lencēm. Organismā interfeisa elementus, tiek deklarēts: Lauku konstantes un abstraktas metodes. Visi lauki ir publiski galīgs statisko - visi šie modifikatori nav nepieciešama. Visas metodes tiek uzskatītas par publiskā abstrakts - šīs modifikatori arī var tikt precizēts. Tagad pietiek tiek teikts par atšķirību starp abstraktā klase no Java interfeisu.

  • valsts saskarne AI paplašina B, C, D {
  • // ķermeņa
  • }

Atzīt klases interfeisa mantinieku, ir nepieciešams, lai izmantotu atslēgvārdu īsteno:

  • klase AClass īsteno BI, CI, di {}

Tas ir, ja pēc tam, kad klases deklarācija īsteno norādīto interfeisa nosaukums, tās klases īsteno. Mantinieki šīs klases izpaužas tās elementus, tāpēc tie arī pārdot to.

ir atļauta arī mainīgie, kas tiek interfeisa tipu. Tie var attiekties uz tipa klases, kas īsteno šo interfeisu, vai null. Šādiem mainīgie ir visi elementi Object klases, jo objekti ģenerē klasēs, un tie, savukārt, izriet no objekta klasi.

Šajā rakstā mēs apspriedām dažus elementus Java objektu modeli - abstraktas klases, abstrakti metodes interfeisu.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 lv.atomiyme.com. Theme powered by WordPress.