Π‘Π²ΠΎΠΉΡΡΠ²Π° ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΡΠΎΡΡ (ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ)
ΠΠ΄ΠΈΠ½ (Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½) ΠΈΠ· ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² set ΠΈΠ»ΠΈ get ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ ΡΠ²ΠΎΠΉ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π΄ΠΎΡΡΡΠΏΠ°, Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠΎΠ³ΠΈΠΉ, ΡΠ΅ΠΌ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π΄ΠΎΡΡΡΠΏΠ° ΡΠ°ΠΌΠΎΠ³ΠΎ ΡΠ²ΠΎΠΉΡΡΠ²Π°. ΠΡΠΈ ΡΡΠΎΠΌ ΠΎΠ±Π° ΠΌΠ΅ΡΠΎΠ΄Π° Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΡΠΈΡΡΡΡΡΠ²ΠΎΠ²Π°ΡΡ Π² ΠΎΠΏΠΈΡΠ°Π½ΠΈΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π°. Π ΠΏΡΠΈΠΌΠ΅ΡΡ, ΠΌΠ΅ΡΠΎΠ΄ set ΡΠ²ΠΎΠΉΡΡΠ²Π° F ΠΌΠΎΠ³ Π±Ρ ΠΈΠΌΠ΅ΡΡ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π΄ΠΎΡΡΡΠΏΠ° internal, protected internal, protected ΠΈΠ»ΠΈ private. Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΏΠΎΠ»Ρ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ Π½Π΅Π»ΡΠ·Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°… Π§ΠΈΡΠ°ΡΡ Π΅ΡΡ >
Π‘Π²ΠΎΠΉΡΡΠ²Π° ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΡΠΎΡΡ (ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ) (ΡΠ΅ΡΠ΅ΡΠ°Ρ, ΠΊΡΡΡΠΎΠ²Π°Ρ, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ)
Π‘Π²ΠΎΠΉΡΡΠ²Π° ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ ΠΊΠ»Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ ΠΎΡΠΊΡΡΡΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ ΠΈ ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»Π΅ΠΉ, ΡΠΊΡΡΠ²Π°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π²Ρ ΠΎΠ΄ΡΡΠ΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ.
ΠΠ΅ΡΠΎΠ΄ get Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° return ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΡΠ΅Π½ΠΈΠ΅ (Π²ΠΎΠ·Π²ΡΠ°Ρ) Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ²Π°, Π° ΠΌΠ΅ΡΠΎΠ΄ set Π΅Π³ΠΎ Π·Π°ΠΏΠΈΡΡ (ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ). ΠΡΠΈ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΌΠΎΠ³ΡΡ ΠΈΠΌΠ΅ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΉ ΡΡΠΎΠ²Π΅Π½Ρ Π΄ΠΎΡΡΡΠΏΠ°.
Π‘Π»ΡΠΆΠ΅Π±Π½ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ value ΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π΅ΡΠ²Π½ΡΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ ΠΌΠ΅ΡΠΎΠ΄Π° set, ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΠΈΠΌ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅ΠΌΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π°.
Π‘Π²ΠΎΠΉΡΡΠ²ΠΎ, Π½Π΅ ΠΈΠΌΠ΅ΡΡΠ΅Π΅ ΠΌΠ΅ΡΠΎΠ΄Π° set, Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎΠΌ «ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ» (read only).
Π‘Π²ΠΎΠΉΡΡΠ²ΠΎ Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΊΠ°ΠΊ ΠΏΠΎΠ»Π΅, Π° Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°, ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ Π΄Π²Π° ΠΌΠ΅ΡΠΎΠ΄Π° ΠΈΠ· ΡΠΈΡΠ»Π° get ΠΈ set.
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π° F, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΏΠΎΠ»Ρ f ΡΠΈΠΏΠ° type, ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ.
type f;
//…
public type F.
{.
set.
{.
//…
f = value;
}.
get.
{.
//…
return f;
}.
}.
Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΏΠΎΠ»Ρ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ Π½Π΅Π»ΡΠ·Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°, ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅ (Ρ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ°ΠΌΠΈ ref ΠΈ out) ΠΏΡΠΈ Π²ΡΠ·ΠΎΠ²Π΅ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°. Π ΠΏΡΠΈΠΌΠ΅ΡΡ, ΠΌΠ΅ΡΠΎΠ΄, ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠΉ ΠΊΠ°ΠΊ void aMethod (ref type a), Π½Π΅Π»ΡΠ·Ρ Π²ΡΠ·Π²Π°ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠΌ aMethod (ref F), Ρ ΠΎΡΡ ΠΌΠΎΠΆΠ½ΠΎ, Π΅ΡΠ»ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π΄ΠΎΡΡΡΠΏ, aMethod (ref f).
ΠΠ΄ΠΈΠ½ (Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½) ΠΈΠ· ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² set ΠΈΠ»ΠΈ get ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ ΡΠ²ΠΎΠΉ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π΄ΠΎΡΡΡΠΏΠ°, Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠΎΠ³ΠΈΠΉ, ΡΠ΅ΠΌ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π΄ΠΎΡΡΡΠΏΠ° ΡΠ°ΠΌΠΎΠ³ΠΎ ΡΠ²ΠΎΠΉΡΡΠ²Π°. ΠΡΠΈ ΡΡΠΎΠΌ ΠΎΠ±Π° ΠΌΠ΅ΡΠΎΠ΄Π° Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΡΠΈΡΡΡΡΡΠ²ΠΎΠ²Π°ΡΡ Π² ΠΎΠΏΠΈΡΠ°Π½ΠΈΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π°. Π ΠΏΡΠΈΠΌΠ΅ΡΡ, ΠΌΠ΅ΡΠΎΠ΄ set ΡΠ²ΠΎΠΉΡΡΠ²Π° F ΠΌΠΎΠ³ Π±Ρ ΠΈΠΌΠ΅ΡΡ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π΄ΠΎΡΡΡΠΏΠ° internal, protected internal, protected ΠΈΠ»ΠΈ private.
Π‘Π²ΠΎΠΉΡΡΠ²ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΊΡΡΡΡ Π² Π½Π°ΡΠ»Π΅Π΄Π½ΠΈΠΊΠ΅. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ new. Π ΠΏΡΠΈΠΌΠ΅ΡΡ, Π΅ΡΠ»ΠΈ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ F ΡΠΆΠ΅ Π±ΡΠ»ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π² ΠΊΠ»Π°ΡΡΠ΅-ΠΏΡΠ΅Π΄ΠΊΠ΅, Π½ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΊΡΡΡΠΎ Π² Π½Π°ΡΠ»Π΅Π΄Π½ΠΈΠΊΠ΅, Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΈΠΌΠ΅ΡΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ.
public new type F.
Π‘Π²ΠΎΠΉΡΡΠ²ΠΎ (Π½ΠΎ Π½Π΅ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² set ΠΈΠ»ΠΈ get Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΡΡΠΈ) ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΌ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π² ΠΎΠΏΠΈΡΠ°Π½ΠΈΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡ virtual, Π° Π² ΠΊΠ»Π°ΡΡΠ°Ρ -Π½Π°ΡΠ»Π΅Π΄Π½ΠΈΠΊΠ°Ρ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡ override.
Π‘Π²ΠΎΠΉΡΡΠ²ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π°Π±ΡΡΡΠ°ΠΊΡΠ½ΡΠΌ. Π’ΠΎΠ³Π΄Π° Π΅Π³ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ ΡΠΎΡΠΌΡ.
public abstract type F.
{.
set;
get;
}.
ΠΠ½Π΄Π΅ΠΊΡΠ°ΡΠΎΡΡ.
ΠΠ½Π΄Π΅ΠΊΡΠ°ΡΠΎΡΡ ΠΈΠΌΠ΅ΡΡ ΡΠΎΡΠΌΡ ΡΠ²ΠΎΠΉΡΡΠ²-ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ². ΠΠ½ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΡ. ΠΠ»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠΌ.
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΡΠΎΡΠ° ΠΈΠΌΠ΅Π΅Ρ Π²ΠΈΠ΄.
public int this[int index].
{.
// get ΠΈ set ΠΌΠ΅ΡΠΎΠ΄Ρ.
}.
ΠΠ΅ΡΠΎΠ΄Ρ get ΠΈ set ΠΈΠΌΠ΅ΡΡ ΠΎΠ΄ΠΈΠ½ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ Π½Π΅ΡΠ²Π½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ index.
Π’ΠΈΠΏ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° index Π½Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ ΡΠΈΠΏΠΎΠΌ int. ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ index ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΈΠΏ string.
Π§ΠΈΡΠ»ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π½Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΎ. ΠΠ°ΡΡΠΈΠ² ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅ΡΠ½ΡΠΌ.
ΠΠ½Π΄Π΅ΠΊΡΠ°ΡΠΎΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠ΅ΡΠ΅Π³ΡΡΠΆΠ΅Π½Π½ΡΠΌ.