Celé roky na vysokej škole som používal public
a chcel by som vedieť, aký je rozdiel medzi public
, private
a protected
?
Takisto čo robí static
na rozdiel od toho, že nemá nič?
Hmm.
Pozri tu: Modifikátory prístupu.
V skratke:
Verejné dáva metóde alebo typu úplnú viditeľnosť z iných typov/tried.
Private umožňuje prístup k súkromnej metóde/premennej len typu, ktorý ju obsahuje (všimnite si, že vnorené triedy majú prístup aj k súkromným metódam/premenným obsahujúcich tried).
Protected je podobný ako private s tým rozdielom, že odvodené triedy môžu tiež pristupovať k chráneným metódam.
"Nothing" je ekvivalent VB.NET'k null. Hoci ak máte na mysli "nič", čo znamená "bez modifikátora prístupu", potom záleží na tom, hoci veľmi hrubé pravidlo (určite v C#) je, že ak explicitne neuvediete modifikátor prístupu, deklarácia metódy/premennej je zvyčajne taká obmedzená, ako len môže byť. Teda napr.
public class MyClass
{
string s = "";
}
je v skutočnosti to isté ako:
public class MyClass
{
private string s = "";
}
Odkazovaný článok MSDN ponúkne úplný opis, ak nie je explicitne uvedený modifikátor prístupu.