KompyutaProgramu

Vipengele vya mfano wa kipengele cha Java: darasa la abstract, interface

Dhana kuu ya darasa la abstract liko katika thesis ifuatayo: wakati mwingine sio madarasa tayari tayari, lakini kwa fomu "ghafi". Vile vile haviwezi kutumiwa moja kwa moja (kujenga matukio).

Je, ni darasa la abstract katika Java?

Hebu fikiria mfano mwingine. Kuna darasa la kisasa la Java katika mfuko wa Java.util. Haina kutekeleza kalenda maalum ambayo hutumiwa, kwa mfano, katika Ulaya ya Magharibi na Mashariki, China, Korea ya Kaskazini, Thailand, nk Lakini ina kazi nyingi muhimu, kwa mfano, kuongeza siku chache kwa tarehe maalum: kazi hizi zinahitajika kwa yeyote Utekelezaji wa kalenda. Huwezi kufuta mfano kutoka kwa darasa la abstract.

Madarasa yasiyo ya kawaida, mbinu za mbinu za Java

Tuseme unahitaji kuendeleza mambo kadhaa ya kielelezo, kwa mfano, maumbo ya kijiometri: mviringo, mstatili, nyota, nk. Na kuna chombo kinachochota. Kila sehemu ina uonekano tofauti, hivyo njia inayoambatana (basi iitwaye rangi) inatekelezwa tofauti. Hata hivyo, kila sehemu ina vipengele vingi vya kawaida: takwimu lazima ziandikwa katika mstatili, zinaweza kuwa na rangi, inayoonekana na zisizoonekana, nk. Hiyo ni, unahitaji kuunda darasa la wazazi kwa maumbo haya yote, ambapo kila sehemu itapata mali ya kawaida. Lakini nini kuhusu njia ya rangi? Baada ya yote, darasa la wazazi hauna uwakilishi wa kuona. Ikiwa utatangaza njia ya rangi katika kila darasa kwa kujitegemea, utahitaji kuchambua sehemu ambayo inachukuliwa na kisha kutekelezwa. Kwa hiyo, njia hiyo inapaswa kutangaza kuwa haijafikiri katika darasa la mzazi: kuweka kichwa cha njia bila mwili. Na kila darasa linalotokana litaelezea mwili wake. Katika Java, darasa la ubatili linaweza kuingiza mbinu za abstract.

Ikiwa darasa lina mbinu zisizo za kufikirika, basi darasa ni abstract. Kabla ya daraja la neno kuweka neno la msingi la msingi, katika kichwa cha njia - pia. Baada ya kichwa cha njia hii, unahitaji kuweka semicoloni. Katika Java, darasa la ubatili haliwezi kuzalisha matukio. Ikiwa tunataka kuzuia uumbaji wao, hata kama darasa halina mbinu zisizo za kufikirika, basi darasa linaweza kutangaza kuwa haijulikani. Lakini ikiwa darasa lina angalau njia moja isiyo ya kufikirika, basi darasa lazima iwe wazi. Haiwezekani kwa darasa kuwa wote wazi, mwisho, na njia, pia. Njia haiwezi kuwa ya kufikirika, ya faragha, ya static, ya asili. Ili madarasa ya kurithi yatangazwe kuwa yasiyo ya abstract na kuunda matukio yao, lazima kutekeleza njia zote za wazazi za abstract. Darasa yenyewe linaweza kutumia mbinu zake za abstract.

Mfano:

  • Kikamilifu ya darasa la AClass {
  • Njia ya kibatili ya ubatili ya umma (int a);
  • }
  • Chuo cha BClass kinaongeza AClass {
  • Njia ya utupu ya umma (int a) {
  • // mwili
  • }

Vigezo vya aina ya aina ya abstract inaruhusiwa. Wanaweza kutaja kizazi cha asiye na abstract wa darasa hili au kuwa wazi.

Uingiliano katika Java - mbadala ya urithi nyingi

Java haina urithi nyingi, kwa sababu basi kuna matatizo fulani. Darasa hawezi kurithi kutoka kwa madarasa kadhaa. Lakini inaweza kutekeleza interfaces kadhaa.

Maingiliano na madarasa yasiyofaa ya Java - dhana ni sawa, lakini si sawa. Kiambatanisho kinaweza kutangaza kuwa cha umma, basi kinapatikana kwa kila mtu, au huwezi kutaja wahariri wa umma, basi interface inapatikana tu ndani ya mfuko wake. Muhtasari wa neno la msingi hauhitajiki, kwa kuwa interface tayari imekataa, lakini unaweza kuielezea.

Azimio la usanidi

Inakuja na kichwa na inaweza kwanza kufuatiwa na neno la msingi la umma, kisha neno la interface. Kisha neno linapanua na kuhesabu kwa interfaces ambazo hii hurithi inaweza kwenda. Hapa, marudio hayaruhusiwi, na pia haiwezekani kwa uhusiano wa urithi kuwa tegemezi ya kutegemea. Halafu inakuja mwili wa interface, ulioingizwa kwenye bongo. Mashamba ya vipengele yanatangazwa katika mwili wa interface: mashamba ya mara kwa mara na mbinu zisizo za kufikirika. Mashamba yote ni static ya mwisho ya umma - hizi modifiers zote ni hiari. Mbinu zote zinachukuliwa kuwa wazi kwa umma - hizi modifiers zinaweza pia kuwa maalum. Sasa kabisa kutosha ni alisema kuhusu tofauti kati ya darasa abstract na interface Java.

  • Interface ya umma AI inaongeza B, C, D {
  • // mwili
  • }

Kutangaza darasa kama mrithi wa interface, unahitaji kutumia neno la msingi:

  • Vifaa vya darasa la AClass BI, CI, DI {}

Hiyo ni, kama jina la interface limewekwa katika tamko la darasa baada ya vifaa, basi darasa linalitumia. Wamiliki wa darasani hii wanarithi vipengele vyake, hivyo pia huiingiza.

Vigezo vya aina ya interface pia vinaruhusiwa. Wanaweza kutaja aina ya darasa ambayo hutumia interface hii, au null. Vigezo vile vina vipengele vyote vya darasa la Kitu, kwa sababu vitu vinazalishwa kutoka kwa madarasa, na wale kwao wanarithi kutoka kwa darasa la Kitu.

Katika makala hii, tumeangalia baadhi ya vipengele vya mfano wa kitu cha Java - madarasa ya abstract, mbinu za abstract, interfaces.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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