Mga computerProgramming

Encapsulation - ano ito? Encapsulation sa programming

Encapsulation - ito ay isa sa tatlong mga pangunahing tampok ng mga object-oriented programming (OOP). Ang iba pang dalawang - polymorphism at pamana. Sama-sama sila ay bumubuo sa PLO framework na kung saan lays down ng isang hanay ng mga tampok ng pagsulat mga programa sa iba't ibang wika, gamit ang tatlong mga prinsipyo. Object-oriented wika, siya namang, ay nagpapasalamat sa mahigpit na sundin ang mga ito.

OOP Basics

Object-oriented programming sa tatlong pillars ng paglikha nito:

  • Polymorphism, pagsagot sa tanong ng kung paano ang isang partikular na programming language na trato sa mga bagay na magkaroon ng isang relasyon sa bawat isa, sa isang katulad na paraan.
  • Pamana, na nagbibigay ng isang sagot, kung paano ay ang pagpapasigla ng ang paggamit ng mga magagamit muli code.
  • Encapsulation, na kung saan ay ang sagot sa tanong ng pagtatago ng pagpapatupad ay tumatagal ng lugar, at sa gayon ay ang integridad ng data.

terminolohiya

Encapsulation (programming) - ay ang paggamit ng access modifier upang itago piraso ng code mula sa dulo user. Sa ilalim nito, siya namang, ang ibig sabihin ng nag-develop o heritage sites.

Ang kakanyahan ng ang konsepto ng "encapsulation"

kahulugan ay tumutukoy na sa pamamagitan ng encapsulation nilalayong itinatago ang lahat o bahagi ng code na programa. Ang kakanyahan ng ang konsepto ng "encapsulation" ay upang manipulahin access modifier. Nangangahulugan ito na ang nag-develop ay maaaring magpasya kung aling mga katangian, mga pamamaraan, at mga klase ay bukas sa client-class, at kung ano - ay nakatago.

access modifier

May access modifier, kung saan, bukod sa iba pang mga bagay, ay may kakayahang manipulyarivat encapsulation (Java programming):

  • pampublikong ( "Publiko" - pampublikong, open access) - ibahagi ang parehong kasalukuyan klase at mga bagay, at sa labas ng mundo;
  • pribado ( "prayvat" - pribado, pribado, nakatagong access) - sarado access, ang kakanyahan ng kung saan ay ganap na ang kabaligtaran ng isang nakaraan. Ito ay nagbibigay ng access lamang mula sa kasalukuyang class;
  • protektado ( "protekted" - protektado, kalahating nakatago access) - I-access sa kasalukuyang klase at ang kanyang mga derivatives;
  • default - hindi natukoy na access modifier ay nangangahulugan na ang patlang / paraan ay maaaring makita para sa lahat ng kasalukuyang mga klase sa package.

Sa C # wika ( "Si Sharp"), bilang karagdagan sa nasa itaas (maliban sa huling), marami pa ring mga modifier:

  • panloob ( "panloob" - panloob na pag-access) - accessibility sa kasalukuyang kapulungan, panloob na access sa lahat ng iba pang mga kaso;
  • panloob na protektado ( "panloob na protekted" - panloob Protected Access) - unyon ng dalawang mga modifier sa isa kung saan manifest katangian ng pareho ng mga ito.

Ang papel na ginagampanan ng encapsulation

encapsulation mekanismo inaalis panlabas na impluwensiya sa ang code at maling paggamit ng data na naka-embed sa loob nito. Ito ay nagagawa sa pamamagitan ng pagsasama ng code at ang data sa isa.

Bagay at encapsulation

Ang pagsasama-sama ang pagpapatupad ng isang software module at ang data na naka-embed sa code, programming ay tinatawag na isang bagay. Ang kakanyahan ng koneksyon nito sa encapsulation ay na tulad ng isang pamamaraan ay nagbibigay-daan upang mapanatili at matiyak ang integridad ng mga pagpapatakbo ng mekanismo.

Ang bentahe ng encapsulation

Encapsulation - isang paraan upang gawing simple ang pag-encode proseso. Maraming mga linya ng code ay "sa likod ng mga eksena", at sa mga pangunahing klase ng trabaho ay pagpunta sa object pagkakataon.

Ang ideya ng proteksyon ng data

Encapsulation - ito rin ay isang mekanismo na napagtanto ang ideya ng proteksyon ng data. Programa logic object-oriented programming ay binuo sa batayan ng kung ano ang karamihan ng mga data na ito ay nakatago access modifier pribado (pribado, pribadong) o protektado (protektado). Ang labas ng mundo, ang customer sinasadyang o sadyang hindi makapinsala sa pagpapatupad ng isang module ng software. Dahil sa katunayan ito ay ginagawang mas madali upang hindi kahit na sa layunin, encapsulation - ito ay isang napakahusay na prinsipyo.

encapsulation unit

Class, bilang isang pangunahing unit ng encapsulation at inilalarawan ang data Binubuo ng code, na kung saan ay magagawang upang gumana sa mga data. Siya ay din ang batayan para sa ang konstruksiyon ng ang bagay. Ang huli, sa turn, ay ipinakita bilang isang halimbawa.

ginagamit din ang mga sumusunod na terminolohiya:

  • Mga miyembro - ito ay ang code at ang data na kasama sa klase;
  • field o Halimbawa variable - ang tinatawag na data na tumutukoy sa klase;
  • function na miyembro - naglalaman ang mga ito sa code mismo. function Miyembro - isang karaniwang pangalan. Ang isang espesyal na kaso - pamamaraan.

Encapsulation tiyak na halimbawa

Encapsulation (programming) Halimbawa:

* Tandaan:

paglalarawan - isang paglalarawan ng ang paraan / ari-arian / variable, ibig sabihin, sa pagkomento sa kung ano talaga ang mangyayari sa programa. Ito ay nagpakita sa pamamagitan ng pagbukas / pagsara tags

gamit System;

namespace OOPLibrary.Auto

{

///

/// klase na ito ay inilaan upang ilarawan ang pagkilos ng sasakyan

///

pampublikong klase Auto

{

///

/// variable nilikha upang isulat sa loob nito, kung ilang taon na ang kotse, dahil ang mga panlabas na pagkagambala sa developer ng ari-arian isinasaalang-alang kuntil

/// modifier ay minarkahan pribado, hal sarado, pribadong access (tingnan. Ang paglalarawan sa itaas).

///

pribadong int _age;

///

/// A boolean (lamang dalawang posibleng halaga - oo o hindi), na naglalarawan kung ang sasakyan ay gumagalaw sa sandaling ito

/// Dapat ding maging bukas sa end user, kung sinuman siya. Samakatuwid ang variable na ito ay bibigyan ng isang pribadong access modifier "prayvat"

///

pribadong bool _isMoving;

///

/// Ito string variable ay dapat maglaman ng impormasyon tungkol sa mga kulay ng kotse. Maaari itong mabago sa pamamagitan ng mga panlabas na impluwensya

/// dahil sa ang kulay modifier napiling open access "pampubliko".

///

pampublikong string Kulay;

///

/// Sa partikular na kaso, ipinapalagay namin na ang pangalan ng kotse, masyadong, ay maaaring mabago

/// bibigyan ng isang modifier ng mga pampublikong (bukas access para sa lahat, anuman ang klase o assembly).

///

pampublikong Pangalan string;

///

/// Binubuksan ang klase tagapagbuo, at lahat ng mga katangian ng ipinahayag variable at magtakda ng isang maliit na mas maaga, makakuha ng kanilang mga halaga

///

pampublikong Auto ()

{

_age = 5;

_isMoving = false;

Color = "Purple";

Pangalanan = "Skoda Octavia";

}

///

/// paraan ng realizes isang bumalik halaga ng mga auto edad. Bakit ito kinakailangan?

/// pribadong access modifier ay hindi gawing posible para sa mga pagbabago client.

///

/// Ibinabalik ang edad ng kotse.

pampublikong string GetAge ()

{

bumalik "Sa sandaling ito, ang napiling machine" + _age + "taon.";

}

///

/// Kung ang kotse ay hindi gumagalaw, ang paraan na ito ipinapatupad ng simula ng kilusan. Ang mga tseke variable oboznalsya, ang kondisyon ng sasakyan (naglalakbay o hindi), at, depende sa mga resulta, ang naaangkop na pagkilos / mensahe ay ipinapakita.

///

public void Start ()

{

kung (_isMoving)

{

Console.WriteLine ( "Ang kilusan ay nai-nagsimula");

}

iba

{

_isMoving = true;

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

}

}

///

/// Kung ang kilos ay pinasimulan, ang paraan na ito hihinto sa kanya. Ang parehong mga programa na lohika tulad ng sa nakaraang kaso isinasaalang-alang.

///

pampublikong magpawalang-bisa Stop ()

{

kung (_isMoving)

{

_isMoving = false;

Console.WriteLine ( "Stop Machine");

}

iba

{

Console.WriteLine ( ". Error kotse at kaya tumayo pa rin, huwag kang gagalaw");

}

}

///

/// Ipinatupad kaliwa pagliko, kung may isang sasakyan

///

pampublikong magpawalang-bisa MoveLeft ()

{

kung (_isMoving)

{

Console.WriteLine ( "lumiko pakaliwa tapos");

}

iba

{

Console.WriteLine ( ". Error sasakyan ay nakahinto ang pag-ikot tampok na ito ay kasalukuyang hindi magagamit.");

}

}

///

/// isang katulad na paraan na may tamang pagliko

///

pampublikong magpawalang-bisa MoveRight ()

{

kung (_isMoving)

{

Console.WriteLine ( "Kumanan ay matagumpay na ipinatupad");

}

iba

{

Console.WriteLine ( ". Error Ang kotse ay hindi inilipat mula sa lugar Ino karapatan ng ito ay sa sandaling ito ng pagkilos, ito ay imposible upang maisagawa ..");

}

}

}

}

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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