Solosaina, Fandaharana
Encapsulation - Inona no anton'izao? Encapsulation in fandaharana
Encapsulation - izany no iray amin'ireo telo lehibe mampiavaka ny zavatra-mirona fandaharana (OOP). Ny roa hafa - polymorphism sy ny lova. Miara-manao ny PLO rafitra izay manolotra ny endri-javatra isan-karazany ny fanoratana fandaharana amin'ny fiteny samihafa, amin'ny fampiasana ireo fitsipika telo. Zavatra mitodika fiteny, kosa, dia tsy maintsy manaraka azy ireo ny fomba hentitra.
OOP Basics
Zavatra-mirona fandaharana amin'ny andry telo ny fahariana:
- Polymorphism namaly ny fanontaniana ny fomba fiteny fandaharana iray manokana itondrany an'ireo zavatra izany, izay misy fifandraisana amin'ny tsirairay, amin'ny Toy izany koa.
- Lovany, manome ny valiny, ahoana no tairina ny fampiasana ny fehezan-dalàna reusable.
- Encapsulation, dia ny valin 'ny fanontaniana ny niafina ny fampiharana mitranga, ary dia toy izany ny angon-drakitra hivadika.
voambolana
Encapsulation (fandaharana) - dia ny mampiasa ny fidirana modifiers mba hanafina tapa-fehezan-dalàna avy amin'ny mpampiasa farany. Ambany izany, kosa, dia midika hoe ny developer na lova toerana.
Ny toetra fototry ny hevitry ny hoe "encapsulation"
Ny famaritana mamaritra fa amin'ny encapsulation nidika nanafina rehetra na ny ampahany amin'ny fandaharana fehezan-dalàna. Ny toetra fototry ny hevitry ny hoe "encapsulation" dia ny fitaovana fidirana modifiers. Midika izany fa ny developer afaka manapa-kevitra izay fananana, fomba, sy ny kilasy ho misokatra ho an'ny mpanjifa-kilasy, ary inona no - miafina.
fidirana modifiers
- -bahoaka ( "bahoaka" --bahoaka, misokatra fahafahana miditra) - anjara na ny amin'izao fotoana izao sy ny zavatra fampianarana, ary izao tontolo izao ho any ivelany;
- manokana ( "prayvat" - manokana, tsy miankina, miafina fahafahana miditra) - nakatona ny fidirana, ny fototry ny izay tanteraka ny mifanohitra amin'ny iray teo aloha. Manome fahafahana miditra ihany ny mpianatra amin'izao fotoana izao;
- voaaro ( "protekted" - voaro, antsasaky ny fidirana miafina) - afaka mahazo ny amin'izao fotoana izao sy ny kilasy Dérivés;
- toerana misy anao - fidirana Modifier Tsy lazaina dia midika fa an-tsaha / fomba mety ho hita noho ny amin'izao fotoana izao ao amin'ny fonosana saranga.
Ao amin'ny C # teny ( "Si Sharp"), ankoatry ny etsy ambony (afa-tsy ny farany), mbola modifiers:
- anatiny ( "anatiny" - anatiny access) - fahafahana miditra ao amin'ny fiangonana amin'izao fotoana izao, an-trano ny fidirana amin'ny tranga hafa rehetra;
- anatiny voaaro ( "protekted anatiny" - anatiny Arovana Access) - sendika roa ao amin'ny iray modifiers izay hita toetra mampiavaka ny roa lahy.
Ny andraikitry ny encapsulation
encapsulation rafitra manala ivelany vokany eo amin'ny fehezan-dalàna sy ny fampiasana ny angon-drakitra nandinika lalina izany. Izany no soa entin'ny natambatra ny fehezan-dalàna sy ny tahirin-kevitra ho iray.
Zavatra sy ny encapsulation
Fampiarahana ny fametrahana ny rindrambaiko sy ny rakitra Module nandinika lalina ny fehezan-dalàna, fandaharana atao hoe zavatra. Ny fototry ny ny fifandraisana amin'ny encapsulation dia hoe toy izany ny fomba mamela foana sy hahazoana antoka ny tsy mivadika ny fiasan'ny ny rafitra.
Ny mahatsara ny encapsulation
Encapsulation - ny fomba hanatsorana ny karazana litera dingana. Maro andalana ny fehezan-dalàna ireo "ambadiky ny sehatra", ary ao amin'ny kilasy asa lehibe mankany amin'ny fanoherana ohatra.
Ny hevitra ny angona fiarovana
Encapsulation - dia ihany koa ny rafitra izay mahatsapa ny hevitra ny angona fiarovana. Program lojika zavatra-mirona fandaharana dia miorina eo amin'ny fototry ny zavatra ankamaroan'ny antontan-kevitra dia ho miafina fidirana Modifier tsy miankina (manokana, tsy miankina) na voaaro (voaaro). Ny any ivelany izao tontolo izao, ny mpanjifa tsy nahy na fanahy iniana tsy hanimbana ny fametrahana ny rindrambaiko Module. Raha ny marina izany, satria mahatonga azy io tsy mora ny tena na dia amin'ny tanjona, encapsulation - izany no tena fitsipika tsara.
encapsulation vondrona
Kilasy, toy ny rafitra fototra ao encapsulation sy mamaritra ny tahirin-kevitra ahitana ny fehezan-dalàna, izay afaka miasa amin'ny Ireo antontan-kevitra. Izy ihany koa no fototry ny ny fanorenana ny zavatra. Ity farany indray kosa, dia aseho ho toy ny ohatra.
- mpikambana - izany no fehezan-dalàna, ary ny rakitra ao amin'ny kilasy tafiditra;
- saha na ny ohatra hiovaova - ilay antsoina hoe tahirin-kevitra izay mamaritra ny mpianatra;
- mpikambana miasa - dia mirakitra ny fehezan-dalàna mihitsy. Member miasa - ny anarana iombonana. Nisy tranga manokana - fomba.
Encapsulation ohatra manokana
Encapsulation (fandaharana) ohatra:
* Note:
famaritana - famaritana ny fomba / fananany / miova, izany hoe naneho hevitra ny zavatra tena mitranga ao amin'ny fandaharana. Tsy miseho amin'ny alalan'ny fanokafana / fanakatonana Tags
mampiasa System;
Anaran-tsehatra OOPLibrary.Auto
{
///
/// kilasy ity dia natao hamaritana ny fiara ny hetsika
///
kilasy Auto-bahoaka
{
///
/// hiovaova noforonina mba soraty aminy, firy taona ny fiara, satria ny fitsabahan'ny ivelany ao ny fananana developer mihevitra ilaina
/// Modifier dia voamariky tsy miankina, i.e. mikatona, fidirana manokana (jereo. Ny famaritana etsy ambony).
///
int manokana _age;
///
/// A boolean (roa ihany no sanda mety - eny na tsia), izay mamaritra raha mandroso ny fiara dia amin'izao fotoana izao
/// Tokony hisokatra koa hatramin'ny farany mpampiasa, na zovy na zovy izy. Koa miova izany ka omena ny tsy miankina mahazo Modifier "prayvat"
///
bool manokana _isMoving;
///
/// miova ity laha-daza dia tokony ahitana vaovao momba ny loko ny fiara. Izany dia azo ovaina amin'ny alalan'ny ivelany fitaoman
/// noho ny loko Modifier voafidy misokatra access "bahoaka".
///
Loko kofehy-bahoaka;
///
/// Amin'ny tranga manokana ity, isika dia mihevitra fa ny anaran 'ny fiara, koa, dia azo ovaina
/// notendrena ny Modifier-bahoaka (fidirana misokatra ho an'ny rehetra, na inona na inona ny kilasy na ny fivoriana).
///
-bahoaka kofehy Name;
///
Manokatra /// Mpanao ny kilasy, sy ny fananan 'ny rehetra naneho miova ka nametraka kely aloha, hahazo ny soatoavina
///
Auto-bahoaka ()
{
_age = 5;
_isMoving = diso;
Color = "Purple";
Anarana = "Skoda Octavia";
}
///
/// mahatsapa ny fomba miverina vidin'ny taona ny fiara. Nahoana no ilaina?
/// fidirana manokana Modifier dia tsy ho afaka ny mpanjifa miova.
///
Miverina /// ny taona ny fiara.
-bahoaka GetAge kofehy ()
{
hiverina "Amin'izao fotoana izao, ny milina voafidy" + _age + "taona.";
}
///
/// Raha ny fiara dia tsy nampihetsi-po, izany fomba manatanteraka ny fanombohan'ny hetsika. Taratasim-bola miova oboznalsya, ny toe-javatra nisy ny fiara (mandeha na tsia), ary, arakaraka ny vokatra, ny mety asa / hafatra no miseho.
///
-bahoaka Start banga ()
{
raha (_isMoving)
{
Console.WriteLine ( "The hetsika Efa nanomboka");
}
hafa
{
_isMoving = marina;
Console.WriteLine ( "Vonona, Set .. Mandehana eny!");
}
}
///
/// Raha ny sarimihetsika no nanomboka, io fomba mijanona azy. Toy izany koa lojika fandaharana toy ny tamin'ny teo aloha heverina raharaha.
///
-bahoaka foana Stop ()
{
raha (_isMoving)
{
_isMoving = diso;
Console.WriteLine ( "Atsaharo ny Machine");
}
hafa
{
Console.WriteLine ( ". Error fiara ka avia ianareo, dia aza mihetsika");
}
}
///
/// ampiharina ankavia kosa, raha misy fiara
///
-bahoaka foana MoveLeft ()
{
raha (_isMoving)
{
Console.WriteLine ( "miankavia dia atao");
}
hafa
{
Console.WriteLine ( ". Error fiara dia fihodinan'ny amin'ny toerana amin'izao fotoana izao endri-javatra tsy misy.");
}
}
///
/// Ny fomba toy izany koa ny tsara kosa
///
-bahoaka foana MoveRight ()
{
raha (_isMoving)
{
Console.WriteLine ( "Miverena soa aman-tsara marina dia ampiharina");
}
hafa
{
Console.WriteLine ( ". Heloka ny fiara dia tsy mety hafindra avy any an-toerana no nitodika tsara amin'izao fotoana izao ny asa, dia azo atao ny manatanteraka ..");
}
}
}
}
Similar articles
Trending Now