1 /*
2 * Több elv
3 * 1. Statikus tagváltozók
4 * 1. A statikus tagváltozók osztályváltozók, és minden objektum ugyanazt a memóriateret osztja meg
5 * 2. A statikus tagváltozók deklarációja és meghatározása csak egyszer történik, amikor az osztály először töltődik be
6 * 3. Amikor először töltünk be egy osztályt, először az összes statikus tagváltozóhoz rendelj kezdőértékeket a típus szerint, majd jobb értékeket csatoljunk azokhoz, amelyeknek rértékük van
7 * 2. Statikus kezdeti blokk
8 * 1. A statikus inicializációs blokkokat csak egyszer hajtják végre, amikor az osztály először töltődik be
9 * ······ Több statikus tagváltozó és statikus indítás gyors referencia előfordulási sorrendje sorrendben történik······
10 * 3. Dinamikus tagváltozók
11 * 1. A dinamikus tagváltozók definícióját minden alkalommal a konstruktor előtt hajtják végre, amikor egy objektumot megidéznek
12 * 4. Dinamikus inicializációs blokk
13*1. A dinamikus inicializációs blokkot minden alkalommal a konstruktor előtt hajtják végre, amikor egy objektumot megidéznek
14 * ······ Több dinamikus tagváltozót és dinamikus inicializációs blokkokat a megjelenésük sorrendjében hajtanak végre······
15 * Összefoglaló: Általánosságban, amikor egy osztályt először töltenek be, az alábbi sorrendben hajtják végre, öröklés nélkül
16 * 1. A statikus tagváltozó definícióját és a statikus inicializációs blokkot a megjelenés sorrendjében hajtsuk végre
17 * 2. A dinamikus tagváltozó definíció és a dinamikus inicializációs blokk végrehajtása a megjelenés sorrendjében
18 * 3. Végrehajtsd a konstruktor
19 * Egy objektum újraindítása esetén csak a 2. és 3. lépés hajtható végre
20 *
21 * ············ A tagváltozókat, definíciókat és inicializációs blokkokat a konstruktor előtt hajtják végre·········
22 * 5. Ha öröklés történik, azt a következő sorrendben kell végrehajtani.
23 * 1. Végrehajtsuk az anyaosztály statikus tagváltozó definícióját és statikus inicializációs blokkját, majd hajtsuk végre az alosztály statikus tagváltozó definícióját és statikus inicializációs blokkját
24 * 2. Végrehajtsuk a szülőosztály nem-statikus tagváltozó definícióját és dinamikus inicializációs blokkját, majd hajtsuk végre a szülőosztály építési módszert
25 * 3. Végrehajtsuk az alosztályok nemstatikus tagváltozóinak definícióját, dinamikusan inicializáljuk a blokkokat, és hajtsuk végre az alosztály-építési módszert
26 * Továbbá: Ha az alosztály szerkezeti módszerében használt metódust újraírták, akkor az alosztály újraírási metódusát használják, amikor az alosztály konstruktorát hívjuk az alosztály objektum megépítésekor
|