ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

БтатичСский конструктор ΠΈ статичСский класс

Π Π΅Ρ„Π΅Ρ€Π°Ρ‚ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ статичСских ΠΏΠΎΠ»Π΅ΠΉ выполняСтся ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ (свСрху Π²Π½ΠΈΠ·) ΠΏΠΎ Ρ‚Сксту опрСдСлСния класса. Поля, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… инициализация Π΅Ρ‰Π΅ Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π°, ΠΈΠΌΠ΅ΡŽΡ‚ ΡƒΠΌΠ°Π»Ρ‡ΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ значСния (для арифмСтичСских Ρ‚ΠΈΠΏΠΎΠ² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ статичСского поля ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°Π²Π½ΠΎ Π½ΡƒΠ»ΡŽ). Π’ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… выраТСниях статичСских ΠΏΠΎΠ»Π΅ΠΉ допустимо ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ обращСния ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠΌ статичСским Ρ‡Π»Π΅Π½Π°ΠΌ классов. ПослС выполнСния… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

БтатичСский конструктор ΠΈ статичСский класс (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

НазначСниС статичСского конструктора — инициализация статичСских ΠΏΠΎΠ»Π΅ΠΉ класса. БтатичСский конструктор вызываСтся срСдой исполнСния ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (CLR) ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ΠΌ ΠΊ Π»ΡŽΠ±ΠΎΠΌΡƒ статичСскому полю класса ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ созданиСм экзСмпляра (ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°) класса.

ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€Ρ‹ классов — статичСскиС ΠΈ Π½Π΅ΡΡ‚атичСскиС (послСдниС рассмотрСны Π² Π³Π». 11) ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ рядом особСнностСй, ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‰ΠΈΡ… ΠΈΡ… ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² классов. Имя конструктора всСгда совпадаСт с ΠΈΠΌΠ΅Π½Π΅ΠΌ Ρ‚ΠΎΠ³ΠΎ класса, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΎΠ½ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚. Для конструктора Π½Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ся Ρ‚ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния (Π΄Π°ΠΆΠ΅ Ρ‚ΠΈΠΏ void для конструктора Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½). Π’ Ρ‚Π΅Π»Π΅ конструктора ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π΅Ρ‚ нСобходимости, Π½ΠΎ Π΄ΠΎΠΏΡƒΡΡ‚ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ return. Для статичСского конструктора нСльзя ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ доступа.

Класс ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ статичСский конструктор. Для статичСского конструктора ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π½Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ся — спСцификация ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ пустой.

Π€ΠΎΡ€ΠΌΠ°Ρ‚ объявлСния статичСского конструктора:

static имя_класса{).

{ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹_Ρ‚Π΅Π»Π°_конструктора}.

БтатичСский конструктор Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ нСпосрСдствСнно ΠΈΠ· ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ — статичСский конструктор вызываСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ автоматичСски. Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ статичСский конструктор вызываСтся послС выполнСния ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ΠΎΠ² статичСских ΠΏΠΎΠ»Π΅ΠΉ класса. ОсновноС Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ статичСского конструктора — Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ слоТныС дСйствия, Π½Π΅ΠΆΠ΅Π»ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€Ρ‹ ΠΏΠΎΠ»Π΅ΠΉ ΠΈ ΠΊΠΎΠ½ΡΡ‚Π°Π½Ρ‚. Для статичСского конструктора нСдоступны нСстатичСскиС Ρ‡Π»Π΅Π½Ρ‹ класса.

Π’ ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ статичСский конструктор Ρ‚ΠΎΠ³ΠΎ класса, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ ΠΌΠ΅Ρ‚ΠΎΠ΄ Main (). Π’ Ρ‚ΠΎΠΌ ΠΆΠ΅ классС ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ нСсколько статичСских ΠΏΠΎΠ»Π΅ΠΉ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠΌ ΠΈΡ… ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΊΠ°ΠΊ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ΠΎΠ², Ρ‚Π°ΠΊ ΠΈ Ρ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ статичСского конструктора.

// 10_Q8.cs — Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€Ρ‹ ΠΈ ΡΡ‚атичСский конструктор using System; class Program {.

static int[] ar = new int[] { 10, 20, 30, 40 }; static int numb = n + ar[3] - ar[l];

// БтатичСский конструктор: static ProgramQ.

{ numb /= n; n = ar[l] + n; } static int n = 2; static void MainQ {.

Console.WriteLine («numb={0}, n = {1}», numb, n);

} }

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹: numb=10, n = 22.

Π’ ΠΊΠ»Π°ΡΡΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ статичСскиС поля: ссылка Π°Π³, связанная с Ρ†Π΅Π»ΠΎΡ‡ΠΈΡΠ»Π΅Π½Π½Ρ‹ΠΌ массивом ΠΈΠ· 4 элСмСнтов; цСлочислСнныС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ numb ΠΈ ΠΏ. Π’ Ρ‚Π΅Π»Π΅ статичСского конструктора ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ numb ΠΈ ΠΏ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°ΡŽΡ‚ся значСния, ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΎΡ‚ Ρ‚Π΅Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ. ВСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Π΅Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»Π°, Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΡ‹ ΡƒΠΆΠ΅ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠ»ΠΈ.

Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ статичСских ΠΏΠΎΠ»Π΅ΠΉ выполняСтся ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ (свСрху Π²Π½ΠΈΠ·) ΠΏΠΎ Ρ‚Сксту опрСдСлСния класса. Поля, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… инициализация Π΅Ρ‰Π΅ Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π°, ΠΈΠΌΠ΅ΡŽΡ‚ ΡƒΠΌΠ°Π»Ρ‡ΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ значСния (для арифмСтичСских Ρ‚ΠΈΠΏΠΎΠ² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ статичСского поля ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°Π²Π½ΠΎ Π½ΡƒΠ»ΡŽ). Π’ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… выраТСниях статичСских ΠΏΠΎΠ»Π΅ΠΉ допустимо ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ обращСния ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠΌ статичСским Ρ‡Π»Π΅Π½Π°ΠΌ классов. ПослС выполнСния ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ статичСских ΠΏΠΎΠ»Π΅ΠΉ выполняСтся статичСский конструктор, дСйствия ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ значСния статичСских ΠΏΠΎΠ»Π΅ΠΉ.

Как Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅Ρ‚ Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ C# [1], классы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для создания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ содСрТат Ρ‚ΠΎΠ»ΡŒΠΊΠΎ статичСскиС Ρ‡Π»Π΅Π½Ρ‹, Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±ΡŠΡΠ²Π»ΡΡ‚ΡŒ статичСскими. Π’ .Net Framework Ρ‚Π°ΠΊΠΈΠΌΠΈ классами ΡΠ²Π»ΡΡŽΡ‚ΡΡ System. Control ΠΈ System.Environment. ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΠΌ основныС особСнности статичСских классов.

Π’ ΡΡ‚атичСских классах Π½Π΅Ρ‚ конструкторов экзСмпляров (ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²) ΠΈ ΡΡ‚ΠΈ классы Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ Π±Π°Π·ΠΎΠ²Ρ‹ΠΌΠΈ классами ΠΏΡ€ΠΈ наслСдовании (наслСдованиС рассматриваСтся Π² Π³Π». 13.) БтатичСскиС классы ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠ΅ΠΉ typeof ΠΈ ΡΡ€Π΅Π΄ΡΡ‚Π²Π°ΠΌΠΈ доступа ΠΊ Ρ‡Π»Π΅Π½Π°ΠΌ класса. Π’ Ρ‡Π°ΡΡ‚ности, статичСский класс Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ Ρ‚ΠΈΠΏΠ° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ Ρ‚ΠΈΠΏΠ° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°.

Π’ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ объявлСния статичСского класса Π²Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ static. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… классов статичСский класс нСльзя ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ с ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°ΠΌΠΈ sealed ΠΈ abstract. Однако, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ статичСский класс Π½Π΅ ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΠ΅Ρ‚ Π² ΠΈΠ΅Ρ€Π°Ρ€Ρ…иях наслСдования, ΠΈΠΌΠ΅Π½Π½ΠΎ свойства классов с ΡΡ‚ΠΈΠΌΠΈ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°ΠΌΠΈ присущи статичСскому классу.

Π’ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½ΠΈΠΈ статичСского класса нСльзя ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ спСцификатор Π±Π°Π·Ρ‹. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, статичСский класс Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ интСрфСйсы (интСрфСйсам посвящСна Π³Π». 14). БтатичСский класс ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ класс System.Object.

Π’Π°ΠΊ ΠΊΠ°ΠΊ статичСский класс Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π±Π°Π·ΠΎΠ²Ρ‹ΠΌ, Ρ‚ΠΎ Π΄Π»Ρ Π΅Π³ΠΎ Ρ‡Π»Π΅Π½ΠΎΠ² Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½Ρ‹ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ protected ΠΈ protected internal. Для Ρ‡Π»Π΅Π½ΠΎΠ² статичСского класса Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² доступа ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ public ΠΈ private.

НСсмотря Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° static Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ статичСского класса, всС Π΅Π³ΠΎ Ρ‡Π»Π΅Π½Ρ‹, ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΎΡ‚ ΠΊΠΎΠ½ΡΡ‚Π°Π½Ρ‚ ΠΈ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² (классов), Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Ρ‹ с ΡΠ²Π½ΠΎ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ static.

БтатичСскиС классы ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ для логичСского объСдинСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ Π±Π»ΠΈΠ·ΠΊΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ².

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ статичСских классов ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π΅Ρ‚ нСобходимости, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ классы этой Π³Π»Π°Π²Ρ‹ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ статичСскиС Ρ‡Π»Π΅Π½Ρ‹, ΠΈ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΡΡ‚ΠΈΡ… классов ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ снабТСн Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠΌ.

static class имя_класса

Π’ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ Π΅Ρ‰Π΅ Ρ€Π°Π·, Ρ‡Ρ‚ΠΎ класс нСльзя ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ статичСским, Ссли Π² Π΅Π³ΠΎ объявлСнии присутствуСт хотя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ нСстатичСский Ρ‡Π»Π΅Π½.

ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ вопросы ΠΈ Π·Π°Π΄Π°Π½ΠΈΡ

  • 1. ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅ Ρ‡Π»Π΅Π½Ρ‹ класса, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Ρ‹ статичСскими.
  • 2. КакиС Ρ‡Π»Π΅Π½Ρ‹ класса ΡΠ²Π»ΡΡŽΡ‚ΡΡ статичСскими Π±Π΅Π· примСнСния ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° static?
  • 3. ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ доступа.
  • 4. МоТно Π»ΠΈ Π² ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½ΠΈΠΈ Ρ‡Π»Π΅Π½Π° класса ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π²Π° ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° доступа?
  • 5. ΠŸΡ€ΠΈΠ²Π΅Π΄ΠΈΡ‚Π΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ΠΈΠΌΠ΅Π½ΠΈ статичСского Ρ‡Π»Π΅Π½Π° класса, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ для обращСния ΠΊ Π½Π΅ΠΌΡƒ ΠΈΠ·Π²Π½Π΅ класса.
  • 6. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΏΠΎΠ»Π΅ класса?
  • 7. Когда статичСскоС ΠΏΠΎΠ»Π΅ размСщаСтся Π² ΠΏΠ°ΠΌΡΡ‚ΠΈ?
  • 8. МоТно Π»ΠΈ Π² ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½ΠΈΠΈ статичСского поля ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ доступа?
  • 9. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ список объявлСний ΠΏΠΎΠ»Π΅ΠΉ?
  • 10. НазовитС Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ΠΎΠ² ΠΏΠΎΠ»Π΅ΠΉ.
  • 11. Π§Ρ‚ΠΎ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΌ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ статичСского поля?
  • 12. Как выполняСтся инициализация статичСских ΠΏΠΎΠ»Π΅ΠΉ ΠΏΡ€ΠΈ отсутствии ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ΠΎΠ²?
  • 13. ΠžΠ±ΡŠΡΡΠ½ΠΈΡ‚Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ статичСских ΠΏΠΎΠ»Π΅ΠΉ.
  • 14. Какой статус доступа Ρƒ ΡΡ‚атичСского поля ΠΏΡ€ΠΈ отсутствии ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° доступа?
  • 15. Как ΠΎΠ±ΡŠΡΠ²Π»ΡΡŽΡ‚ΡΡ константы, ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰ΠΈΠ΅ классу?
  • 16. Π‘Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ констант класса.
  • 17. Π’ Ρ‡Π΅ΠΌ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ статичСских констант ΠΎΡ‚ ΡΡ‚атичСских ΠΏΠΎΠ»Π΅ΠΉ с ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ readonly?
  • 18. ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ примСнСния ΠΈ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΡ статичСских ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ².
  • 19. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ статичСский конструктор?
  • 20. Бколько статичСских конструкторов Π² ΠΊΠ»Π°ΡΡΠ΅?
  • 21. Какова спСцификация ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² статичСского конструктора?
  • 22. Как ΠΈ ΠΊΠΎΠ³Π΄Π° вызываСтся статичСский конструктор?
  • 23. КакиС Ρ‡Π»Π΅Π½Ρ‹ объявлСния класса доступны Π² Ρ‚Π΅Π»Π΅ статичСского конструктора?
  • 24. ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅ особСнности статичСских классов.
  • 25. КакиС ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π² ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½ΠΈΠ΅ статичСского класса?
  • 26. КакиС ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π² ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½ΠΈΡ Ρ‡Π»Π΅Π½ΠΎΠ² статичСского класса?
  • 27. ΠœΠΎΠΆΠ΅Ρ‚ Π»ΠΈ Π² ΡΡ‚атичСский класс Π²Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ нСстатичСский рСкурсивный ΠΌΠ΅Ρ‚ΠΎΠ΄?
ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ