KompyutaProgramu

Muhtasari darasa na mbinu: maelezo, sifa na makala. Nini ni tofauti na interface dhahania darasa

Mtu yeyote aliye na maarifa yoyote kidogo katika programu, wanashangaa kwa nini kuna watu dhahania madarasa msingi. ni kusudi lake ni nini? Jinsi ya kuunda darasa abstract? faida wanatoa katika mazoezi gani? Kwa wao ni zinahitajika katika programu na baadhi ya vipengele vya utekelezaji wake lazima kuzingatia?

madarasa abstract

Hivyo katika programu inayoitwa kitengo code kwa misingi ya ambayo vitu inaweza kuundwa. Ni alibainisha kuwa darasa hili la waandamizi haiwezi kufikirika. Kwa hiyo, viumbe wa vitu kulingana na yao inawezekana kabisa. Kama tunaona mfano wa Java, sisi kujenga mfano kwamba tunaweza kuelezea constructors katika darasa A. Lakini kwa matumizi yao, hatuwezi. njia ya nje ya hali hii ni kutangaza ushahidi wowote kutofautiana. Na unahitaji kuwa wazi ili inaelekeza katika kitu cha darasa A. Hii ni jinsi gani inaweza kufanyika? Hii itatusaidia kuleta. Ni lazima kuzaliwa akilini kwamba darasa mzazi daima kuchukuliwa kuwa hodari zaidi wa ukoo. Katika lugha nyingi za kompyuta kutumika kuleta moja kwa moja. Lakini kama hakuna imani katika kuwepo kwa vile utaratibu, basi lazima dhahiri rejea kitu.

mbinu dhahania

Ni nini? Muhtasari wito mbinu hizo ambazo kutekelezwa katika darasa hili. Hivyo, baada ya mabano (ambayo orodha hoja kutumika humo) usikate umbo ufunguzi (na hapo iko kuzuia maelezo ya mbinu), na tu semicolon. Kwa hiyo, katika kesi hii, hakuna taarifa kuhusu kile yake. Hapa swali anaweza kuulizwa: "Na ni njia ipi bila utekelezaji?" Baada ya yote, yeye si ya kutumika! Bila shaka, katika darasa, ambako ilivyoelezwa, hii si iwezekanavyo. Lakini kama sisi kuzingatia hali kutoka hatua ya mtazamo wa ukoo, inaweza kupigiwa. Na itakuwa kazi kwa maelezo maalum inapatikana katika darasa hili.

Makala mbinu dhahania

Kuna mapungufu katika kuzitumia. Hebu fikiria mfano wa lugha ya programu Java. Kuna mahitaji kama darasa ina angalau njia kama hiyo, ni lazima abstract. Na katika hali yoyote ni muafaka wa kutumia ujenzi hizo? Hebu kuelewa hili na wanyama mfano darasani. Kuanza kuelewa kwamba hakuna sauti kwamba hazijachapishwa. Kwa hiyo, katika darasa zaidi ya jumla haujawekwa utekelezaji sauti ya mbinu. Lakini kuundwa mwili ambayo mbali kupitia vitalu kwa ajili yake. Na katika yafuatayo, wakati wa kuunda mbwa darasa, paka au Hamster itakuwa eda njia moja kwa ajili hiyo, katika mfumo wa ambayo itakuwa wazi kwa vipengele vyote.

interface

Katika programu iliyoundwa zana nyingi ambao lengo - kusaidia watu kufanya bora wa bidhaa. Na mada kwenye mjadala itolewe kwa kipengele hiki, na kwamba kila mtu anajua Tofauti darasa abstract kutoka interface. Kwa hiyo, kipengele mwisho ni kwamba inaweza kuwa mali na mbinu si defined mwili. Kwa kuchunguza tofauti kati ya darasa abstract kutoka interface, wakae zaidi juu ya mtu fulani. Hivyo, kwanza ni kurithiwa, wakati ya pili - ni barabara. Inexperienced mtu huyu inaweza kuonekana visivyokuwa. Lakini ukweli ni, ambazo zinaweza kurithiwa darasa moja tu, na kugundua - kama vile muhimu. Hiyo ni nini ni tofauti na interface ya tabaka la kufikirika. Java bado makala kwamba inaweza ilivyoelezwa tu dhahania mbinu za umma na constants tuli. Lakini wakati huo huo interfaces pia inaweza kurithiwa. Ni muhimu wanasema kwamba waendeshaji zinazotumiwa ni za umma kupitia umma.

Nyingi urithi wa interfaces

Kipengele hiki hakipatikani kwa madarasa katika lugha nyingi programu (kwa mfano, Java kuchukuliwa na sisi). Hii ni kutokana na idadi ya matatizo. Kama utata kama zinaonyesha kuwa kutokea katika mfululizo. Hii ilikuwa ni sababu ya kuanzishwa kwa interface mbalimbali urithi. Hii sehemu kutatua matatizo yaliyopo, lakini si wote. Hivyo, kutokana na kanuni za encapsulation na polymorphism, interfaces inaweza kwa mafanikio katika madarasa tofauti kulingana na mbinu mbalimbali (ingawa itakuwa na jina moja). Lakini usisahau kuhusu matatizo yaliyopo. Hivyo, wakati wa kufanya kazi na interfaces nyingi itabidi daima kutaja nani tuna akilini. Pia, matatizo itakuwa na wakati wewe kujaribu kufanya kazi na jina moja kwa njia mbili - katika kesi hii, huwezi kuwa na uwezo wa kuchukua faida ya. Kwa hiyo, katika hali kama hiyo ni muhimu kutunza uwepo wa mauzo ya jumla.

data dhahania

Dhana hii ni muhimu kwa mpango. Katika hali hii, chini ya ujumla ya ukaguzi wa kujitegemea na kuelewa mgawanyo wa interface na utekelezaji. Hebu tuangalie mfano. Tuna televisheni, ambayo ni kitu au moduli. Ina interface. Kama vile, ni udhibiti, pamoja na sauti na picha. interface kamili zaidi inatumika, starehe zaidi TV katika matumizi. Tunaweza kubadili kati ya programu na kubwa ya kifungo yoyote. Katika hali hii, hakuna haja ya kufikiria kuhusu michakato ya kimwili katika TV. Kuwatunza wataalamu, ambao kukusanya kifaa. Tunapenda watu haja tu na mali. Kurudi kwa programu, tunaweza kusema kwamba wao ni juu ya interface na utekelezaji kama hiyo. Pia, kama mtu ni ujasiri katika maarifa yake, anaweza "kuondoa" kufunika TV yetu nadharia na kuboresha yake. Ingawa hii inaweza kuleta mafanikio ya ndani, katika hali nyingi, matokeo ya mwisho ni mbaya. Kwa hiyo, katika mkono programu kuzuia upatikanaji na kuficha sehemu ya ndani ya takwimu abstract. kanuni ya utaratibu huu hutoa kwa njia ya kuzuia kukusudia au unintentional marekebisho ya vipengele vya ndani. Na wakati kuzungumza juu ya aina dhahania data, wastani wa seti ya seti ya shughuli ambayo inaweza kuwa walifanya yao.

vitu

Tumeona darasa abstract na interface kwa ujumla na kwa ujumla. Sasa hebu undani elimu yetu. Kuanza kulipa kipaumbele vitu. Hapa chini yao, kwa ujumla, na ufahamu wa hali halisi ya mazingira ambayo ipo katika nafasi na wakati. Lakini rasmi kutambua vitu ndani ya programu ni ngumu (na falsafa na nadharia mtazamo). Kwa hiyo, ni kutokana na uwezo wake. Kama mfano, yafuatayo: kitu inaweza kuwa ya kipekee kutambuliwa (kwa jina la kipekee), ni katika hali fulani na matumizi ya muundo fulani ya tabia.

urithi

Kwa kuwa programu yako ni msingi wa kihierarkia mti kujenga mahusiano kati ya vitu, swali ni yaliyotolewa kuhusu ukweli kwamba mali za msingi wa aina ya maktaba ya wazazi code walikuwa kuhamishwa. Chini ya urithi kuelewa uhusiano wakati mtu mmoja kurudia tabia na muundo wa kitu kingine. Katika maisha ya kawaida, inaweza kupatikana kila mahali. Kama uliahirishwa na programu mambo kiasi fulani tu. Kama kulinganisha, ukweli kwamba hakuna mwili kama vile ndege. Hili ni jina dhahania. Kama mfano maalum kuongoza chai, Nightingale au sparrow. Shukrani kwa urithi tunaweza kutumia maktaba ya darasa, pamoja na kuendeleza kwao kwa ajili ya mpango fulani. Chombo hiki inaruhusu sisi kujenga vitu mpya, wakati huo huo kuongeza au kubadilisha tabia za tayari kuundwa. Mrithi anapata mbinu zote na maeneo ya babu yake na hupata sifa yake mwenyewe, kama ni lazima. Kutokana na ukweli kuwa kuna mambo abstract na kanuni ya urithi, kuna nafasi kubwa ya muundo ndani ya kitu-oriented programu. Aidha, inaruhusu njia rahisi ya kutatua matatizo. Wakati kurithi darasa mpya ya data kuhamishiwa na kazi.

polymorphism

Ni muhimu kutumia kazi moja ya kutatua aina tofauti ya matatizo. Katika hali hii inatoa kuwepo kwa uwezekano wa utekelezaji tofauti, yaliyomo ambayo itategemea aina ya kitu ambayo kazi ni kosa. Chini ya polymorphism kuelewa tabia za mambo ambayo mzazi wa kawaida, kufanya sawa na maana semantic ya tatizo kwa njia tofauti. Sisi kuteka mlinganisho na wanyama. Kuna hatua - ili kuendeshwa. Sote tunajua jinsi ya kuitekeleza. Lakini wanyama mbalimbali (simba, tembo, sokwe, mamba, kasa) hatua utafanyika kwa njia tofauti. Katika hali hii, harakati zao ni wajibu developer, ambayo kama ni lazima inaweza kusababisha kwa kesi fulani fulani ya kawaida, algorithm na kutekeleza ni mafanikio. Hii inafanyika kwa kutumia seti ya mbinu. Wakati huo huo katika kila programu ya darasa bayana ambayo kitu mali ambayo ni asili. Kubadilisha kitu katika watoto, unaweza kufikia maalum, taka hatua katika kesi hii. Athari vile inaitwa polymorphism ya vitu. Kwa ujumla, daraja la dhahania ni chombo muhimu sana kwa programu.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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