KompüterProqramlaşdırma

Encapsulation - bu nədir? proqramlaşdırma encapsulation

Encapsulation - bu üç əsas xüsusiyyətlərindən biridir obyekt-yönümlü proqramlaşdırma (OOP). Digər iki - polimorfizmi və miras. Birlikdə onlar bu üç prinsip istifadə edərək, müxtəlif dillərdə yazılı proqramları xüsusiyyətləri bir sıra aşağı edir FAT çərçivə təşkil edir. Obyekt yönümlü dil, öz növbəsində, ciddi onlara əməl etməyə borcludurlar.

OOP Basics

Obyekt-yönümlü proqramlaşdırma onun yaradılması üç sütuna:

  • Polimorfizmi, müəyyən bir proqramlaşdırma dili bənzər bir şəkildə, bir-biri ilə əlaqələr var obyektləri ilə məşğul necə suala cavab.
  • Miras, bir cavab verərək, necə reusable kodu istifadə stimullaşdırılması edir.
  • həyata keçirilməsi gizlətmək sualına cavab Encapsulation, beləliklə məlumatların bütövlüyünü yer tutur və.

terminologiya

Encapsulation (proqramlaşdırma) - son istifadəçi kodu ədəd gizlətmək üçün giriş modifikatorların istifadə etməkdir. altında, öz növbəsində, geliştirici və ya irs saytlar deməkdir.

"Encapsulation" anlayışının mahiyyəti

müəyyən encapsulation ilə bütün və ya proqram kodu bir hissəsini gizlətmək deməkdir ki, müəyyən edir. "Encapsulation" anlayışının mahiyyəti çıxış modifikatorların manipulyasiya edir. gizli - Bu geliştirici olan xüsusiyyətləri, metod qərar qəbul edə bilər, və siniflər müştəri sinif açıq olacaq və nə deməkdir.

giriş modifikatorların

digər şeylər arasında, manipulyarivat encapsulation (Java proqramlaşdırma) qadirdir, giriş modifikatorların var:

  • ictimai ( "İctimai" - ictimai, açıq giriş) - səhm cari siniflər və obyektlərin, həm də və xarici dünyaya;
  • Şəxsi ( "prayvat" - özəl, xüsusi, gizli giriş) - mahiyyəti tamamilə əvvəlki qarşı deyil, giriş bağlanıb. Bu, yalnız cari sinif erişim təmin edir;
  • mühafizə ( "protekted" - yarım gizli giriş, mühafizə) - Cari sinif və onun törəmələri giriş;
  • default - naməlum giriş modifiye sahə / metodu paketi bütün cari siniflər üçün görülə bilər.

C # dilində ( "Si Sharp") ildə (son istisna olmaqla) yuxarıda əlavə, hələ modifikatorların var:

  • daxili ( "daxili" - daxili çıxış) - Cari toplantıda accessibility, bütün digər hallarda qapalı giriş;
  • daxili müdafiə ( "daxili protekted" - daxili Protected Access) - iki modifikatorların ittifaqı biri olan onların həm də açıq-aşkar xassələri.

encapsulation rolu

encapsulation mexanizm bu əlaqədar məlumatların kodu və sui-istifadə xarici təsir aradan qaldırır. Bu bir kodu və məlumat birləşdirərək həyata keçirilir.

Object və encapsulation

bir proqram modulu və kodu daxil məlumatların həyata keçirilməsini birləşdirərək, proqramlaşdırma bir obyekt adlanır. encapsulation ilə əlaqədar mahiyyəti belə bir üsul saxlamaq və mexanizminin əməliyyat bütövlüyünü təmin etmək üçün imkan verir ki.

encapsulation üstünlüyü

Encapsulation - encoding prosesi asanlaşdırmaq üçün bir yol. kod çoxsaylı xətləri "pərdə arxasında" və ana sinifi iş hallarda etiraz etmək niyyətindədir.

məlumatların qorunması ideyası

Encapsulation - bu da məlumatların qorunması ideyasını həyata bir mexanizmdir. Program məntiq obyekt-yönümlü proqramlaşdırma məlumatların ən olacaq nə əsasında qurulur gizli giriş modifiye xüsusi (özəl, xüsusi) və ya mühafizə (mühafizə). xarici dünya, müştəri təsadüfən və ya qəsdən bir proqram modulu həyata keçirilməsinə zərər vurmur. əslində bu belə məqsədilə deyil, bu, çox asan edir, çünki, encapsulation - bu, çox yaxşı prinsipdir.

encapsulation vahid

Class, data bu məlumatların fəaliyyət edə kod ibarətdir encapsulation əsas vahidi kimi və təsvir edir. O, həmçinin obyektin tikintisi üçün əsasdır. sonuncu isə öz növbəsində, bir misal kimi təqdim olunur.

Həmçinin aşağıdakı terminologiya istifadə:

  • üzvləri - bu kodu və sinif daxil data;
  • sahələri və ya instansiya dəyişənlər - sinif müəyyən deyilən məlumatlar;
  • üzv funksiyaları - onlar kodu özü ehtiva edir. Member funksiyaları - bir ümumi adı. A xüsusi hal - üsulları.

Encapsulation xüsusi misal

Encapsulation (proqramlaşdırma) misal:

* Qeyd:

təsviri - metodu / Mülkiyyət / dəyişən təsviri, həqiqətən proqramda nə şərh yəni. Bu açılış / bağlanması tags vasitəsilə nümayiş olunur

Sistemi istifadə edərək;

namespace OOPLibrary.Auto

{

///

/// Bu sinif avtomobilin hərəkət təsvir etmək üçün nəzərdə tutulmuşdur

///

ictimai sinif Auto

{

///

/// üçün yaradılmışdır dəyişənlər, neçə il avtomobil, əmlak geliştirici xarici müdaxilə artıq hesab ildən yazmaq

/// modifiye (yuxarıda təsvir bax.), Yəni qapalı, xüsusi giriş xüsusi qeyd olunur.

///

Şəxsi int _age;

///

/// A boolean (yalnız iki mümkün dəyərlər - bəli və ya xeyr), nəqliyyat vasitələrinin hazırda hərəkət olub təsvir

/// Bu da son istifadəçi üçün açıq olması lazım olduğunu kim idi. Ona görə də bu dəyişən xüsusi giriş modifiye "prayvat" verilir

///

Şəxsi bool _isMoving;

///

/// Bu string dəyişən avtomobil rəngi haqqında məlumatlar göstərilməlidir. Bu xarici təsirlərdən tərəfindən dəyişdirilə bilər

/// rəng modifiye "ictimai" açıq seçilmiş çünki.

///

ictimai string Color;

///

/// bu halda, biz avtomobilin adı da dəyişdirilə bilər ki, güman

/// (asılı olmayaraq sinif və ya toplaşmaq, bütün açıq çıxış) ictimai bir təyinedici təyin.

///

ictimai string adı;

///

/// sinif konstruktor, dilə gətirdi dəyişən bütün xüsusiyyətləri açılır və onların dəyərlər almaq, bir az əvvəl təyin

///

ictimai Auto ()

{

_age = 5;

= False _isMoving;

Rəng = "Qara";

= "Skoda Octavia" adını;

}

///

/// metodu avtomatik yaş qaytarılması dəyəri həyata keçirir. Niyə bu lazımdır?

/// xüsusi giriş modifiye müştəri dəyişikliklər mümkün deyil.

///

/// avtomobil yaşına qaytarır.

ictimai string getAge ()

{

+ _age + "il." "Seçilmiş maşın," Bu anda qayıtmaq;

}

///

avtomobil hərəkət deyil ///, bu üsul hərəkət start həyata keçirir. Checks dəyişən oboznalsya, avtomobil (səyahət və ya deyil) və nəticəsindən asılı olaraq vəziyyəti, müvafiq fəaliyyət / mesaj göstərilir.

///

ictimai etibarsız Start ()

{

əgər (_isMoving)

{

Console.WriteLine ( "hərəkatı artıq başlanılıb");

}

daha

{

= True _isMoving;

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

}

}

///

hərəkət başladıldı varsa ///, bu üsul onu vermir. hesab əvvəlki olduğu kimi eyni proqram məntiq.

///

ictimai etibarsız Stop ()

{

əgər (_isMoving)

{

= False _isMoving;

Console.WriteLine ( "Stop Machine");

}

daha

{

Console.WriteLine ( ". Error avtomobil və belə ki, hərəkət etmir hələ durmaq");

}

}

///

bir vasitə olduqda /// sol növbəsində həyata

///

ictimai etibarsız MoveLeft ()

{

əgər (_isMoving)

{

Console.WriteLine ( "həyata sola");

}

daha

{

Console.WriteLine ( ". Error vasitə stasionar fırlanma xüsusiyyət mövcuddur deyil.");

}

}

///

/// sağ növbəsində ilə oxşar üsul

///

ictimai etibarsız MoveRight ()

{

əgər (_isMoving)

{

Console.WriteLine ( "sağa dönün uğurla həyata keçirilib");

}

daha

{

Console.WriteLine ( ". Avtomobil Error spot bu anda hərəkət, bu yerinə yetirmək üçün mümkün deyil doğru dönüş köçürülüb deyil ..");

}

}

}

}

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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