1 /*
2 * Flere prinsipper
3 * 1. Statiske medlemsvariabler
4 * 1. Statiske medlemsvariabler er klassevariabler, og alle objekter deler samme minneplass
5 * 2. Deklarasjonen og definisjonen av statiske medlemsvariabler utføres kun én gang når klassen lastes inn for første gang
6 * 3. Når du laster inn en klasse for første gang, tildel først initialverdier til alle statiske medlemsvariabler i henhold til typen, og legg deretter høyre verdier til de med r-verdier
7 * 2. Statisk initial blokk
8 * 1. Statiske initialiseringsblokker utføres bare én gang når klassen lastes inn for første gang
9 * ······ Flere statiske medlemsvariabler og rask referanseforekomst for statisk initiering utføres sekvensielt······
10 * 3. Dynamiske medlemsvariabler
11 * 1. Definisjonen av dynamiske medlemsvariabler utføres før konstruktøren hver gang et objekt instansieres
12 * 4. Dynamisk initialiseringsblokk
13*1. Den dynamiske initialiseringsblokken utføres før konstruktøren hver gang et objekt instansieres
14 * ······ Flere dynamiske medlemsvariabler og dynamiske initialiseringsblokker utføres i den rekkefølgen de vises······
15 * Sammendrag: Generelt, når en klasse lastes inn for første gang, utføres den i følgende rekkefølge, uten arv involvert
16 * 1. Kjør definisjon av statisk medlemsvariabel og statisk initialiseringsblokk i rekkefølgen de forekommer
17 * 2. Kjør definisjon av dynamisk medlemsvariabel og dynamisk initialiseringsblokk i rekkefølgen de forekommer
18 * 3. Utfør konstruktøren
19 * Når et objekt instansieres igjen, kan kun steg 2 og 3 utføres
20 *
21 * ············ Medlemsvariabler og definisjoner samt initialiseringsblokker utføres før konstruktøren·········
22 * 5. Når arv er involvert, skal den utføres i følgende rekkefølge
23 * 1. Kjør definisjonen av statisk medlemsvariabel og statisk initialiseringsblokken til foreldreklassen, og utfør definisjonen av statisk medlemsvariabel og statisk initialiseringsblokk for underklassen
24 * 2. Kjør den ikke-statiske medlemsvariabeldefinisjonen og den dynamiske initialiseringsblokken til foreldreklassen, og kjør metoden for å bygge foreldreklassen
25 * 3. Utfør definisjonen av ikke-statiske medlemsvariabler for underklasser og initialiser blokker dynamisk, og utfør underklassekonstruksjonsmetoden
26 * Også: Hvis metoden brukt i overklassekonstruksjonsmetoden er omskrevet av underklassen, brukes underklasseomskrivingsmetoden når man kaller forelderklassekonstruktøren ved konstruksjon av underklasseobjektet
|