DatoriProgrammēšana

Iekapsulēšana - kas tas ir? Iekapsulēšana programmēšanas

Iekapsulēšana - tas ir viens no trim galvenajām iezīmēm objektorientētā programmēšana (OOP). Pārējie divi - polimorfismu un mantošana. Kopā tie veido PAO regulējumu, kas paredzētu virkni funkcijas rakstīšanas programmu dažādās valodās, izmantojot šos trīs principus. Objektu orientētas valodās, savukārt, ir pienākums stingri ievērot tos.

OOP pamati

Objektorientētā programmēšana uz trim pīlāriem tās izveidošanas:

  • Polimorfisms, atbildot uz jautājumu par to, kā konkrēti programmēšanas valoda nodarbojas ar objektiem, kas ir attiecības ar otru, līdzīgā veidā.
  • Mantojuma, sniedzot atbildi, kā tas stimulēšana izmantošanas atkārtoti lietojamo kodu.
  • Iekapsulēšanas, kas ir uz jautājumu slēpjas ieviešanu atbilde notiek, un tādējādi datu integritāti.

terminoloģija

Iekapsulēšana (programmēšana) - ir izmantot piekļuves modifikatorus, lai noslēptu kodu fragmentus no gala lietotājam. Zem tā, savukārt, nozīmē izstrādātāja vai mantojuma vietas.

Būtība jēdziena "iekapsulēšana"

Definīcija norāda, ka, izmantojot hermetizāciju nozīmēja noslēpjot visu vai daļu no programmas kodu. Par jēdziena "iekapsulēšana" būtība ir manipulēt ar piekļuves modifikatorus. Tas nozīmē, ka attīstītājs var izlemt, kuras rekvizītus, metodes, un nodarbības būs atvērts klienta klases, un ko - ir paslēptas.

piekļuves modifikatori

Ir piekļuves modifikatori, kas, cita starpā, ir spējīga manipulyarivat iekapsulēšanai (Java programmēšanas):

  • publisks ( "Sabiedrība" - sabiedrības, open access) - dalīties gan pašreizējie klases un objekti, kā arī ar ārpasauli;
  • privāta ( "prayvat" - privātais, privātā, slēpto access) - slēgta pieeja, kura būtība ir pilnīgi pretējs no iepriekšējā. Tā nodrošina piekļuvi tikai no pašreizējā klasē;
  • aizsargāts ( "protekted" - aizsargāts, half-slēpta pieeja) - Piekļuve pašreizējo klases un tā atvasinājumi;
  • noklusējums - nenoteikts piekļuves modifikators nozīmē, ka lauks / metodi var redzēt visiem pašreizējiem klašu paketē.

C # valodā ( "Si Sharp"), papildus iepriekš (izņemot pēdējo), joprojām ir modifikatori:

  • iekšējo ( "iekšējais" - iekšējais access) - pieejamība pašreizējā montāža, iekštelpu piekļuvi visos citos gadījumos;
  • iekšējo aizsargāti ( "iekšējais protekted" - iekšējais Protected Access) - savienību divu modifikatori vienā kurā acīmredzami īpašības viņiem abiem.

Par iekapsulēšana loma

iekapsulēšanas mehānisms novērš ārējo ietekmi uz kodu un nepareizu datu iestrādāts tā. Tas ir paveikts, apvienojot kodu un datus vienā.

Objektu un iekapsulēšanas

Apvienojot ieviešanu programmatūras moduļa un datu iegulto kodu, programmēšana sauc objektu. No tā sakarā ar iekapsulēšanas būtība ir tāda, ka šāda metode ļauj saglabāt un nodrošināt integritāti darbības mehānismu.

Priekšrocība iekapsulēšana

Iekapsulēšana - veids, kā vienkāršot kodēšanas procesu. Daudzas rindas koda ir "aizkulisēs", un galvenajā klasē darbs gatavojas iebilst gadījumus.

Ideja par datu aizsardzību

Iekapsulēšana - tas ir mehānisms, kas realizē ideju par datu aizsardzību. Programmas loģika objektorientētā programmēšana ir veidota, pamatojoties uz to, ko lielākā daļa datu tiks paslēpts piekļuve modifikators privātā (privāta, privātā) vai aizsargātas (aizsargāts). Ārpasauli, klients nejauši vai tīši nebojā ieviešanu programmatūras moduli. Jo patiesībā tas padara to ļoti viegli, ne pat nolūkam iekapsulēšana - tas ir ļoti labs princips.

iekapsulēšana vienība

Klases, kā pamatvienība hermetizāciju un apraksta dati ietver kodu, kas spēj darboties uz šiem datiem. Viņš ir arī pamats būvniecības objektu. Pēdējais, savukārt, tiek pasniegts kā, piemēram.

Arī izmanto šādu terminoloģiju:

  • dalībnieki - tas ir kods un iekļauti klasē datiem;
  • lauki vai instanču mainīgie - tā sauktās dati, kas definē klasi;
  • locekļa funkciju - tie satur kodu pats. Dalībvalstis funkcijas - kopīgs nosaukums. Īpašs gadījums - metodes.

Iekapsulēšana konkrēts piemērs

Iekapsulēšanu (programmēšanas) piemērs:

* Piezīme:

apraksts - apraksts Metodes / nekustamais īpašums / mainīgo, ti, komentējot to, kas patiesībā notiek programmā. To pierāda ar atvēršanas / aizvēršanas tagi

izmantojot sistēmu;

nosaukumvietas OOPLibrary.Auto

{

///

/// Šī grupa ir paredzēta, lai aprakstītu automašīnas darbību

///

valsts klases Auto

{

///

/// mainīgie izveidoti, lai rakstīt to, cik gadus auto, jo ārējās iejaukšanās īpašuma attīstītājs uzskata lieka

/// modifikators tiek atzīmēts kā privāts, proti, slēgta, privāta pieeja (skat. Aprakstu iepriekš).

///

privātā int _age;

///

/// Būla (tikai divas iespējamās vērtības - jā vai nē), kas nosaka, vai transportlīdzeklis pārvietojas brīdī

/// Tāpat būtu pieejama gala lietotājam, kurš viņš bija. Tāpēc šis mainīgais ir piešķirts privāta piekļuve pārveidotāja "prayvat"

///

privātā bool _isMoving;

///

/// Tas string mainīgais satur informāciju par krāsu automašīnas. To var mainīt, ārējiem faktoriem

/// jo par krāsu modifikators izvēlas atklātu pieeju "sabiedrība".

///

sabiedriskā string krāsu;

///

/// Šajā konkrētajā gadījumā mēs pieņemam, ka vārds automašīnas, arī var tikt mainīts

/// piešķirts modifikators sabiedrības (atklātu piekļuvi visiem, neatkarīgi no klases vai montāža).

///

sabiedriskā string vārds;

///

/// Atver klases konstruktors, un visas īpašības izteikts mainīgo un noteikt nedaudz agrāk, saņemt to vērtības

///

sabiedriskā Auto ()

{

_age = 5;

_isMoving = false;

Color = "Purple";

Name = "Skoda Octavia";

}

///

/// Metode realizē atgriešanās vērtību auto vecumu. Kāpēc tas ir nepieciešams?

/// privāta piekļuve modifikators nesniedz iespēju klientu izmaiņām.

///

/// Atgriež automobiļa vecumu.

sabiedriskā string GetAge ()

{

atgriešanās "Šobrīd izvēlētā mašīna" + _age + "gadiem.";

}

///

/// Ja automašīna stāv, šī metode īsteno sākumu kustību. Pārbaudes mainīgais oboznalsya nosacījums par transportlīdzekļa (ceļojot vai ne), un, atkarībā no rezultātiem, tiek parādīts atbilstošais darbība / ziņojums.

///

valsts spēkā Start ()

{

ja (_isMoving)

{

Console.WriteLine ( "jau ir sākusies kustība");

}

cits

{

_isMoving = true;

Console.WriteLine ( "Ready, Set .. Go off!");

}

}

///

/// Ja kustības tika uzsākta šī metode apstājas viņu. Tāda pati programma loģika kā iepriekšējā gadījumā uzskatāms.

///

public void Stop ()

{

ja (_isMoving)

{

_isMoving = false;

Console.WriteLine ( "Stop Machine");

}

cits

{

Console.WriteLine ( ". Kļūda auto un tā stāvēt, nepārvietojas");

}

}

///

/// Īstenots kreiso pagriezienu, ja ir transportlīdzeklis

///

valsts spēkā MoveLeft ()

{

ja (_isMoving)

{

Console.WriteLine ( "nogriezieties pa kreisi, tiek darīts");

}

cits

{

Console.WriteLine ( ". Kļūda transportlīdzeklis ir stacionārs rotācija funkcija pašlaik nav pieejama.");

}

}

///

/// Līdzīga metode ar labo pagriezienu

///

valsts spēkā MoveRight ()

{

ja (_isMoving)

{

Console.WriteLine ( "Turn tiesības tika veiksmīgi īstenots");

}

cits

{

Console.WriteLine ( ". Kļūda auto nav pārvietots no vietas ieslēgšana labi tas ir brīdī, kad darbība, nav iespējams veikt ..");

}

}

}

}

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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