25.07.2017 Views

Intro-CSharp-Book-v2015

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Ниво на достъп private<br />

Глава 14. Дефиниране на класове 535<br />

Нивото на достъп, което налага най-много ограничения е private. Елементите<br />

на класа, които са декларирани с модификатор за достъп private<br />

(или са декларирани без модификатор за достъп, защото тогава private се<br />

подразбира), не могат да бъдат достъпвани от никой друг клас, освен<br />

от класа, в който са декларирани.<br />

Следователно, ако декларираме полето name и метода Bark() на класа Dog,<br />

с модификатори private, няма проблем да ги достъпваме вътрешно от самия<br />

клас Dog, но достъп от други класове не е позволен, дори ако са от същото<br />

асембли:<br />

Dog.cs<br />

class Dog<br />

{<br />

private string name = "Sharo";<br />

D<br />

public string Name<br />

{<br />

get { return this.name; }<br />

}<br />

D<br />

}<br />

private void Bark()<br />

{<br />

Console.WriteLine("wow-wow");<br />

}<br />

public void DoSth()<br />

{<br />

this.Bark();<br />

}<br />

Kid.cs<br />

R<br />

R<br />

class Kid<br />

{<br />

public void CallTheDog(Dog dog)<br />

{<br />

Console.WriteLine("Come, " + dog.name);<br />

}<br />

public void WagTheDog(Dog dog)<br />

{<br />

dog.Bark();<br />

}

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!