Awọn kọmputaEto eto

Encapsulation jẹ kini? Encapsulation ni siseto

Encapsulation - yi jẹ ọkan ninu awọn mẹta akọkọ awọn ẹya ara ẹrọ ti ohun-Oorun siseto (OOP). Awọn miiran meji jẹ polymorphism ati ogún. Papọ wọn dagba ipilẹ ti PLO, eyi ti o ṣe ipinnu gbogbo ibiti o ṣeeṣe fun awọn eto kikọ ni awọn ede oriṣiriṣi, nipa lilo awọn agbekale mẹta. Awọn ede Iṣalaye-ọrọ, ni ọna, ni a nilo lati tẹle wọn ni kedere.

Awọn orisun OOP

Iseto sisọ-ọrọ ti o wa lori awọn ọwọn mẹta wa lori awọn ọwọn mẹta:

  • Polymorphism, fesi si ibeere ti bi ede kan ti n ṣe eto ṣiṣe awọn ohun ti o ni ibasepo pẹlu ara wọn, ni ọna kanna.
  • Ifunni, fifun idahun, bawo ni ifojusi lilo awọn koodu naa waye laipẹ.
  • Encapsulation, eyi ti o jẹ idahun si ibeere ti bawo ni a ṣe fi imuse naa pamọ, nitorina idi otitọ ti data naa ni a dabobo.

Awọn ibaraẹnisọrọ

Encapsulation (siseto) ni lilo awọn ayipada ti o niiṣe lati tọju awọn ege ti koodu lati opin olumulo. Labẹ rẹ, ni ọna, tumọ si Olùgbéejáde tabi ohun ini iní.

Awọn idi ti awọn agbekale ti "encapsulation"

Awọn itumọ tumọ si pe encapsulation tumọ si pe gbogbo ohun tabi apakan koodu. Awọn ero ti awọn agbekale ti "encapsulation" ni ifọwọyi ti awọn modifiers wiwọle. Eyi tumọ si pe Olùgbéejáde ara rẹ pinnu ohun ti awọn ohun-ini, awọn ọna ati awọn kilasi yoo ṣii si ẹgbẹ onibara, ati awọn eyi ti a pamọ.

Awọn Modifiers Iwọle

Awọn modifiers wiwọle ti o wa bẹ, eyiti o wa ni awọn elomiran, lati le ṣe amuṣiṣẹpọ fun encapsulation (siseto Java):

  • Àkọsílẹ (àkọsílẹ - gbangba, ìmọ, wiwọle) - Wiwọle awọn ọna mejeji fun awọn nkan lọwọlọwọ ati awọn kilasi, ati fun aye ode;
  • Aladani ("aladani" - ikọkọ, ikọkọ, wiwọle ifipamọ) - wiwọle si ara ẹni, idi ti eyi jẹ idakeji si iṣaaju. Pese wiwọle nikan lati kilasi ti o wa lọwọlọwọ;
  • Ti a dabobo (idaabobo, ologbele-idaabobo, wiwọle) - wiwọle fun kilasi ti isiyi ati awọn itọsẹ lati inu rẹ;
  • Nipa aiyipada, iyipada wiwọle ti ko ni alaye ti o tumọ si pe aaye / ọna han fun gbogbo package ti o wa lọwọlọwọ.

Ni C # ("C Sharp"), ni afikun si pàtó (lai si igbehin), awọn ṣiṣiṣe bẹẹ tun wa:

  • Ti abẹnu (ti abẹnu) - Ayewo ni gbigba lọwọlọwọ, wiwọle pipade fun gbogbo awọn miiran;
  • Idaabobo ti abẹnu ("Idaabobo ti a ti abẹnu inu") - apapo awọn ayipada meji sinu ọkan, ninu eyiti awọn ini-ini ti awọn mejeeji han ara wọn.

Ipa ti Encapsulation

Iseto apaniyan ngbanilaaye lati ṣe idaduro ipa ita lori koodu eto ati lilo ti ko tọ si data ti a fi sinu rẹ. Eyi ni a ṣe nipa pipọ koodu ati data sinu ọkan.

Ohun ati Encapsulation

Awọn apapo ti imuse ti eto module ati awọn data fi kun ni koodu ni siseto ni a npe ni ohun kan. Ẹkọ ti asopọ rẹ pẹlu encapsulation wa dajudaju pe o jẹ ilana yii ti o fun laaye lati ṣetọju ati rii daju pe iṣẹ-ṣiṣe ti iṣọkan ti iṣeto naa labẹ ero.

Anfani ti encapsulation

Encapsulation jẹ ọna lati ṣe simplify ilana fifiranṣẹ. Ọpọlọpọ awọn ila ti koodu wa "lẹhin awọn oju iṣẹlẹ," ati ni iṣẹ kilasi akọkọ ti o lọ pẹlu awọn igba ti awọn nkan.

Awọn imọran ti idaabobo data

Encapsulation jẹ tun sisẹ kan ti o n ṣe ifojusi idii aabo. Ilana eto eto ti eto-iṣẹ ti o da lori orisun ti o daju pe ọpọlọpọ awọn data yoo wa ni pamọ nipasẹ iyipada ayipada ti ikọkọ (ikọkọ, ikọkọ) tabi idaabobo (idaabobo). Aye ita, onibara lairotẹlẹ tabi imomose ko le ba ibajẹ ti module software naa ṣe. Niwon o daju pe o rọrun lati ṣe eyi paapaa ni idi, encapsulation jẹ ilana ti o dara pupọ.

Eniti iṣọkan

Iwọn naa, gẹgẹbi ipilẹ iṣọkan ti encapsulation, ṣe apejuwe awọn data ati ki o ni awọn koodu ti o jẹ agbara ti ṣiṣẹ pẹlu data yi. O tun jẹ ipilẹ fun sisẹ ohun kan. Awọn igbehin, lapapọ, ti wa ni ipoduduro bi apẹẹrẹ ti awọn kilasi.

Awọn itọkasi wọnyi ni a tun lo:

  • Awọn ọmọ ẹgbẹ ni koodu ati data ti o wa ninu kilasi naa;
  • Awọn aaye, tabi awọn oniyipada apẹẹrẹ-data ti a npe ni ti o ṣe apejuwe kilasi naa;
  • Awọn iṣẹ ẹgbẹ-wọn ni koodu naa rara. Awọn iṣẹ ẹgbẹ jẹ orukọ jeneriki. Oran pataki jẹ awọn ọna.

Encapsulation lori apẹẹrẹ kan

Encapsulation (siseto) apẹẹrẹ:

* Akọsilẹ:

Apejuwe jẹ apejuwe ti ọna / ohun ini / iyipada, eyini ni, n ṣawari lori ohun ti gangan ṣẹlẹ ninu eto naa. Ṣiṣẹ pẹlu lilo ṣiṣi / titiipa awọn afi

Lilo System;

Orúkọàyè OOPLibrary.Auto

{

///

/// A ṣe apẹrẹ yii lati ṣe apejuwe awọn ohun-ini ati awọn iṣẹ ti ọkọ

///

Idojukọ ẹya-ara Auto

{

///

/// A ayípadà ti o ṣẹda lati kọ si rẹ, ọdun melo ni ọkọ ayọkẹlẹ, niwon igbesẹ ita gbangba ni ile-ini yii ni o ṣe ayẹwo nipasẹ olugbesegbala lati jẹ alainibajẹ

/// o ti samisi pẹlu ayipada ikọkọ, ti o jẹ, ikọkọ, ikọkọ ti ara ẹni (wo apejuwe sii loke).

///

Ibaramu aladani;

///

/// Agbejade boolean (awọn nọmba meji ti o ṣeeṣe - bẹẹni tabi rara) ti o ṣe apejuwe boya ọkọ ayọkẹlẹ n lọ lọwọlọwọ

/// O yẹ ki o tun wa ni sisi si olumulo opin, ẹnikẹni ti o jẹ. Nitorina, a ṣe ipinlẹ yi lati ṣatunṣe "ayipada" ikọkọ "

///

Aladani Aladani Aladani;

///

/// Yi ayípadà ayípadà gbọdọ ni alaye nipa awọ ti ọkọ ayọkẹlẹ. O le jẹ koko-ọrọ si awọn ayipada lati awọn ipa ita

/// nitoripe awọn ayipada ti gbangba ni "àkọsílẹ" ti yan fun awọ.

///

Awọ eniyan awọ Awọ;

///

/// Ninu ọran yii, a ro pe orukọ ọkọ ayọkẹlẹ le tun yipada

/// firanṣẹ si ayipada ti gbogbo eniyan (wiwọle si gbogbo eniyan fun gbogbo eniyan, laiṣe kilasi tabi apejọ).

///

Orukọ eniyan ti Orukọ;

///

/// A ṣii oluṣeto ile-iṣẹ, ati gbogbo awọn ini ti a fihan nipasẹ awọn oniyipada ati ṣafihan tẹlẹ, gba awọn iye wọn

///

Idojukọ Awujọ ()

{

_age = 5;

_isMoving = eke;

Awọ = "Awowo";

Orukọ = "Skoda Octavia";

}

///

/// Ọna naa n ṣe atunṣe iye ti iye ọjọ ori ti idojukọ. Kini idi ti o ṣe pataki?

/// ayipada ikọkọ wiwọle si ara ẹni ko ṣe ki o ṣeeṣe fun onibara lati yi pada.

///

/// Pada ọjọ ori ọkọ ayọkẹlẹ.

Iwọn ti awọn eniyan Ti o wa ni ita ()

{

Pada "Ni akoko, ẹrọ ti a yan ni" + _age + "ọdun atijọ.";

}

///

/// Ti ọkọ ayọkẹlẹ ko ba gbe, ọna yii n ṣe apẹrẹ ibẹrẹ igbiyanju naa. A ṣe ayẹwo kan si iyipada ti o nfihan ipo ti ọkọ ayọkẹlẹ (boya o ti rin irin-ajo tabi ko), ati, ti o da lori awọn esi, iṣẹ ti o baamu ṣe / ifiranšẹ ti o baamu yoo han.

///

Awujo ti o ni ikọkọ Bẹrẹ ()

{

Ti (_isMoving)

{

Console.WriteLine ("A ti ṣaṣe titẹsi");

}

Bẹẹkọ

{

_isMoving = otitọ;

Console.WriteLine ("Lati bẹrẹ, akiyesi .. Dari! Jẹ ki a lọ!");

}

}

///

/// Ti o ba ti bẹrẹ idiyele, lẹhinna ọna yii da duro. Iṣiro siseto kanna kanna gẹgẹbi ninu ọran ti tẹlẹ.

///

Gbangba awọn eniyan Duro ()

{

Ti (_isMoving)

{

_isMoving = eke;

Console.WriteLine ("Duro, ẹrọ");

}

Bẹẹkọ

{

Console.WriteLine ("aṣiṣe: Ọkọ ayọkẹlẹ ti wa tẹlẹ, ko gbe");

}

}

///

/// Yọọ si ọwọ osi ti o ba wa ni itọsọna ọkọ

///

Aṣayan ti o ni ikọkọ Gbe Mo Left ()

{

Ti (_isMoving)

{

Console.WriteLine ("ti a ti yipada");

}

Bẹẹkọ

{

Console.WriteLine ("aṣiṣe: Ọkọ ayọkẹlẹ jẹ idaduro, iṣẹ iṣẹ lilọ ni Lọwọlọwọ ko si");

}

}

///

/// Ọna iru ọna pẹlu yiyi si ọtun

///

Agboyero ti eniyan MoveRight ()

{

Ti (_isMoving)

{

Console.WriteLine ("Tan ọtun jẹ aṣeyọri");

}

Bẹẹkọ

{

Console.WriteLine ("aṣiṣe: Ọkọ ayọkẹlẹ ko ti gbe sibẹ." Titan si ọtun jẹ lọwọlọwọ igbese ti ko le ṣe. ");

}

}

}

}

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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