CyfrifiaduronRhaglennu

Crynhoad - beth yw hyn? Amgįu mewn rhaglenni

Crynhoad - mae hyn yn un o'r tri phrif nodweddion rhaglennu gwrthrych-oriented (OOP). Y ddau arall - polymorphism ac etifeddu. Gyda'i gilydd maent yn ffurfio'r fframwaith PLO sy'n gosod amrywiaeth o nodweddion o raglenni ysgrifennu mewn gwahanol ieithoedd, gan ddefnyddio'r rhain tair egwyddor. ieithoedd gwrthrych-oriented, yn eu tro, yn gorfod eu dilyn yn llym.

Basics OOP

Gwrthrych-oriented rhaglennu ar dri philer ei greu:

  • Polymorphism, ateb y cwestiwn o sut mae iaith raglennu benodol delio â gwrthrychau sydd â pherthynas â'i gilydd, yn yr un modd.
  • Etifeddu, gan roi ateb, sut mae ysgogi defnydd o cod y gellir eu hailddefnyddio.
  • Mewngapsiwleiddio, sef yr ateb i'r cwestiwn o guddio y gweithrediad yn digwydd, ac felly cyfanrwydd data.

terminoleg

Crynhoad (rhaglennu) - yw defnyddio addasyddion mynediad er mwyn cuddio darnau o cod o'r defnyddiwr. Oddi tano, yn ei dro, yn golygu y safleoedd datblygwr neu dreftadaeth.

Hanfod y cysyniad o "mewngapsiwleiddio"

Mae'r diffiniad yn nodi bod gan mewngapsiwleiddio golygu guddio cyfan neu ran o'r cod rhaglen. Hanfod y cysyniad o "mewngapsiwleiddio" yw i drin addaswyr mynediad. Mae hyn yn golygu y gall y datblygwr benderfynu pa eiddo, dulliau, a bydd y dosbarthiadau ar agor i'r cleient-dosbarth, a beth - yn cael eu cuddio.

modifiers mynediad

Mae addaswyr mynediad, sydd, ymhlith pethau eraill, yn gallu encapsulation manipulyarivat (rhaglennu Java):

  • gyhoeddus ( "Cyhoeddus" - y cyhoedd, mynediad agored) - cyfran y dosbarthiadau a gwrthrychau cyfredol, ac i'r byd y tu allan;
  • preifat ( "prayvat" - mynediad preifat, preifat, cudd) - ar gau mynediad, hanfod sy'n gwbl groes i un blaenorol. Mae'n darparu mynediad yn unig gan y dosbarth ar hyn o bryd;
  • gwarchodedig ( "protekted" - a ddiogelir, mynediad hanner-cudd) - Mynediad i'r dosbarth ar hyn o bryd ac mae ei deilliadau;
  • diofyn - modifier mynediad amhenodol yn golygu y gall y cae / dull i'w gweld ar gyfer yr holl ddosbarthiadau ar hyn o bryd yn y pecyn.

Yn C # iaith ( "Si Sharp"), yn ychwanegol at yr uchod (ar wahân i'r olaf), mae yn dal addasyddion:

  • mewnol ( "mewnol" - mynediad mewnol) - hygyrchedd yn y cynulliad ar hyn o bryd, mynediad dan do i'r mhob achos arall;
  • warchodir mewnol ( "mewnol protekted" - Mynediad mewnol Gwarchodedig) - undeb o ddau modifiers mewn un lle priodweddau amlwg o'r ddau ohonynt.

Rôl mewngapsiwleiddio

mecanwaith amgįu gwared ddylanwad allanol ar y cod a chamddefnyddio data hymgorffori ynddo. Cyflawnir hyn drwy gyfuno cod a data i mewn i un.

Gwrthrych a encapsulation

Byddai cyfuno modiwl meddalwedd a data hymgorffori yn y cod gweithredu, a elwir yn rhaglennu yn wrthrych. Hanfod ei gysylltiad â'r mewngapsiwleiddio yw bod dull o'r fath yn caniatáu i gynnal a sicrhau cyfanrwydd y gweithrediad y mecanwaith.

Y fantais o amgįu

Crynhoad - ffordd o symleiddio'r broses amgodio. Mae nifer o linellau o god yn cael eu "tu ôl i'r llenni", ac yn y prif gwaith dosbarth yn mynd i wrthwynebu achosion.

Mae'r syniad o ddiogelu data

Crynhoad - mae hefyd yn fecanwaith sy'n sylweddoli y syniad o ddiogelu data. rhesymeg Rhaglen rhaglennu gwrthrych-oriented ei adeiladu ar sail yr hyn y bydd y rhan fwyaf o'r data yn gudd modifier mynediad preifat (preifat, preifat) neu warchodedig (gwarchodedig). Byd y tu allan, y cwsmer yn ddamweiniol neu'n fwriadol, ni fydd yn niweidio y modiwl meddalwedd ar waith. Oherwydd yn wir mae'n ei gwneud yn hawdd iawn i ddim hyd yn oed ar bwrpas, amgįu - mae hyn yn egwyddor dda iawn.

uned amgįu

Dosbarth, fel uned sylfaenol o amgáu ac yn disgrifio'r data yn cynnwys cod, sy'n gallu gweithredu ar y data hyn. Mae hefyd yn sail ar gyfer y gwaith o gwrthrych adeiladu. Mae'r olaf, yn ei dro, yn cael ei gyflwyno fel enghraifft.

Fe'i defnyddir hefyd y derminoleg a ganlyn:

  • aelodau - mae hyn yn y cod a'r data a gynhwysir yn y dosbarth;
  • caeau neu newidynnau enghraifft - mae'r data hyn a elwir sy'n diffinio y dosbarth;
  • swyddogaethau aelod - maent yn cynnwys y cod ei hun. swyddogaethau Aelodau - enw cyffredin. Mae achos arbennig - ddulliau.

Enghraifft amgįu benodol

Crynhoad (rhaglennu) enghraifft:

* Noder:

disgrifiad - disgrifiad o'r dull / eiddo / amrywiol, hy rhoi sylwadau ar yr hyn sy'n digwydd mewn gwirionedd yn y rhaglen. Mae'n cael ei dangos trwy agor tagiau / cau

gan ddefnyddio System;

OOPLibrary.Auto namespace

{

///

/// Bwriad y dosbarth yn disgrifio camau y car

///

Auto dosbarth cyhoeddus

{

///

/// newidynnau a grëwyd er mwyn ysgrifennu ynddo, faint o flynyddoedd y car, gan fod y ymyrraeth allanol yn y datblygwr eiddo yn ystyried ddiangen

/// addasydd ei farcio'n breifat, hy cau, mynediad preifat (gweler. Mae'r disgrifiad uchod).

///

_age int preifat;

///

/// Mae boolean (dim ond dau werthoedd posibl - ie neu nage), sy'n disgrifio a yw'r cerbyd yn symud ar hyn o bryd

/// Dylai hefyd fod yn agored i'r defnyddiwr terfynol, pwy bynnag yr oedd. Felly newidyn hwn, rhoddir addasydd mynediad preifat "prayvat"

///

_isMoving bool preifat;

///

/// Dylai'r newidyn llinyn cynnwys gwybodaeth am y lliw y car. Gellir ei newid gan ddylanwadau allanol

/// oherwydd i'r modifier lliw a ddewiswyd mynediad agored "cyhoeddus".

///

Lliw llinyn cyhoeddus;

///

/// Yn yr achos arbennig, rydym yn cymryd yn ganiataol bod enw'r car, hefyd, yn gallu cael ei newid

/// neilltuo addasydd o cyhoeddus (mynediad agored i bawb, waeth beth fo'u dosbarth neu ymgynnull).

///

Enw llinyn cyhoeddus;

///

/// Agor y Constructor dosbarth, a phob eiddo y newidyn a fynegwyd ac yn gosod ychydig yn gynharach, yn cael eu gwerthoedd

///

Auto cyhoeddus ()

{

_age = 5;

_isMoving = ffug;

Lliw = "Purple";

Name = "Skoda Octavia";

}

///

/// Mae'r dull yn sylweddoli gwerth dychwelyd yr oes auto. Pam mae hyn yn angenrheidiol?

/// Nid addasydd mynediad preifat yn ei gwneud yn bosibl ar gyfer y newidiadau cleient.

///

/// Dychwelyd oedran y car.

llinyn gyhoeddus GetAge ()

{

dychwelyd "Ar hyn o bryd, mae'r peiriant dewis" + _age + "o flynyddoedd.";

}

///

/// Os nad yw'r car yn symud, y dull hwn yn gweithredu dechrau'r symudiad. Gwiriadau oboznalsya amrywiol, cyflwr y cerbyd (teithio neu beidio), ac, yn dibynnu ar y canlyniadau, y camau / neges priodol yn cael ei arddangos.

///

ddi-rym cyhoeddus Start ()

{

os (_isMoving)

{

Console.WriteLine ( "Mae'r mudiad eisoes wedi'i ddechrau");

}

arall

{

_isMoving = wir;

Console.WriteLine ( "Ready, Set .. Ewch i ffwrdd!");

}

}

///

/// Os derbynnir y cynnig gychwynnwyd, mae'r dull hwn yn dod i ben ef. Mae'r un rhesymeg rhaglen fel yn yr achos blaenorol a ystyriwyd.

///

Stop ddi-rym cyhoeddus ()

{

os (_isMoving)

{

_isMoving = ffug;

Console.WriteLine ( "Stop Machine");

}

arall

{

Console.WriteLine ( ". Car Gwall ac felly aros yn llonydd, peidiwch â symud");

}

}

///

/// Gweithredwyd dro chwith, os oes cerbyd

///

MoveLeft ddi-rym cyhoeddus ()

{

os (_isMoving)

{

Console.WriteLine ( "trowch i'r chwith yn cael eu gwneud");

}

arall

{

Console.WriteLine ( ". Cerbyd Gwall Nid yw nodwedd cylchdro llonydd ar gael ar hyn o bryd.");

}

}

///

/// Dull tebyg gyda'r troi i'r dde

///

MoveRight ddi-rym cyhoeddus ()

{

os (_isMoving)

{

Console.WriteLine ( "Trowch i'r dde ar waith yn llwyddiannus");

}

arall

{

Console.WriteLine ( ". Gwall Mae'r car wedi symud o'r fan droi i'r dde ei fod yn ar hyn o bryd y camau, nid oes modd i berfformio ..");

}

}

}

}

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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