Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 19118|Відповідь: 2

[Джерело] Підсумок порядку виконання статичних, нестатичних і конструктивних методів у класі

[Копіювати посилання]
Опубліковано 06.04.2017 15:12:32 | | | |
1 /*

2 * Кілька принципів

3 * 1. Статичні змінні елементів

4 * 1. Статичні змінні членів — це змінні класу, і всі об'єкти ділять однаковий простір пам'яті

5 * 2. Оголошення та визначення статичних змінних елементів виконується лише один раз при першому завантаженні класу

6 * 3. При першому завантаженні класу спочатку присвоїть початкові значення всім статичним змінним членів відповідно до типу, а потім прикріпіть правильні значення тим, що мають rvalues

7 * 2. Статичний початковий блок

8 * 1. Статичні блоки ініціалізації виконуються лише один раз при першому завантаженні класу

9          * ······ Кілька статичних змінних елементів і швидкий порядок виникнення статичних посилань виконуються послідовно······

10 * 3. Динамічні змінні елементів

11 * 1. Визначення динамічних змінних елементів виконується перед конструктором щоразу при створенні об'єкта

12 * 4. Блок динамічної ініціалізації

13*1. Блок динамічної ініціалізації виконується перед конструктором щоразу, коли об'єкт створюється

14          * ······ Декілька динамічних змінних елементів і блоків динамічної ініціалізації виконуються у порядку їх появи······

15 * Резюме: Загалом, коли клас завантажується вперше, він виконується у наступному порядку, без успадкування

16 * 1. Виконати визначення статичної змінної елемента та статичний блок ініціалізації у порядку появи

17 * 2. Виконати динамічне визначення змінної елемента та блок динамічної ініціалізації у порядку виникнення

18 * 3. Виконати конструктора

19 * При повторному інстанціонуванні об'єкта можна виконати лише кроки 2 і 3

20          *  

21          * ············ Змінні члена, визначення та блоки ініціалізації виконуються перед конструктором·········

22 * 5. Коли йдеться про спадкування, воно здійснюється у наступному порядку

23 * 1. Виконати визначення статичної змінної елемента та статичний блок ініціалізації батьківського класу, а також виконувати визначення статичної змінної елемента та блок статичної ініціалізації підкласу

24 * 2. Виконати нестатичне визначення змінної елемента та блок динамічної ініціалізації батьківського класу, а також виконати метод побудови батьківського класу

25 * 3. Виконати визначення нестатичних членних змінних підкласів, динамічно ініціалізувати блоки та виконати метод побудови підкласів

26 * Також: якщо метод, використаний у методі побудови батьківського класу, був переписаний підкласом, то метод переписування підкласу використовується при виклику конструктора батьківського класу при побудові об'єкта підкласу





Попередній:.ctor та .cctor для .net
Наступний:Політика генерації первинних ключів NHIBERNATE Native
 Орендодавець| Опубліковано 06.04.2017 15:17:20 |


Під час першого завантаження класу спочатку присвоїть початкові значення всім статичним змінним членів відповідно до типу, а потім виконайте кілька статичних змінних послідовно для прикріпленого правильного значення з правильними значеннями
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com