Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 19118|Répondre: 2

[Source] Résumé de l’ordre d’exécution des méthodes statiques, non statiques et constructives dans une classe

[Copié le lien]
Publié sur 06/04/2017 15:12:32 | | | |
1 /*

2 * Plusieurs principes

3 * 1. Variables statiques des membres

4 * 1. Les variables membres statiques sont des variables de classe, et tous les objets partagent le même espace mémoire

5 * 2. La déclaration et la définition des variables membres statiques ne sont exécutées qu’une seule fois lors du premier chargement de la classe

6 * 3. Lors du chargement d’une classe pour la première fois, attribuez d’abord des valeurs initiales à toutes les variables statiques selon le type, puis associez les valeurs droites à celles avec des valeurs r

7 * 2. Bloc initial statique

8 * 1. Les blocs d’initialisation statiques ne sont exécutés qu’une seule fois lors du premier chargement de la classe

9          * ······ Plusieurs variables membres statiques et l’ordre d’occurrence rapide de référence d’initiation statique sont exécutés séquentiellement······

10 * 3. Variables membres dynamiques

11 * 1. La définition des variables membres dynamiques est exécutée avant le constructeur à chaque instanciation d’un objet

12 * 4. Bloc d’initialisation dynamique

13*1. Le bloc d’initialisation dynamique est exécuté avant le constructeur à chaque fois qu’un objet est instancié

14          * ······ Plusieurs variables membres dynamiques et blocs d’initialisation dynamique sont exécutés dans l’ordre dans lequel ils apparaissent······

15 * Résumé : En général, lorsqu’une classe est chargée pour la première fois, elle est exécutée dans l’ordre suivant, sans héritage impliqué

16 * 1. Exécuter la définition statique des variables membres et le bloc d’initialisation statique dans l’ordre d’occurrence

17 * 2. Exécuter la définition dynamique des variables membres et le bloc d’initialisation dynamique dans l’ordre d’occurrence

18 * 3. Exécuter le constructeur

19 * Lors de l’instanciation à nouveau d’un objet, seules les étapes 2 et 3 peuvent être exécutées

20          *  

21          * ············ Les variables membres, les définitions et les blocs d’initialisation sont exécutés avant le constructeur·········

22 * 5. En cas d’héritage, il doit être effectué dans l’ordre suivant

23 * 1. Exécuter la définition statique de la variable membre et le bloc d’initialisation statique de la classe parente, puis exécuter la définition statique de la variable membre et le bloc d’initialisation statique de la sous-classe

24 * 2. Exécuter la définition non statique de la variable membre et le bloc d’initialisation dynamique de la classe parente, puis exécuter la méthode de construction de la classe parente

25 * 3. Exécuter la définition des variables membres non statiques des sous-classes et initialiser dynamiquement les blocs, puis exécuter la méthode de construction de sous-classes

26 * Aussi : Si la méthode utilisée dans la méthode de construction de la classe mère a été réécrite par la sous-classe, alors la méthode de réécriture de la sous-classe est utilisée lors de l’appel du constructeur de la classe parent lors de la construction de l’objet sous-classe





Précédent:.ctor et .cctor de .net
Prochain:Politique de génération de clés primaires native Nhibernate
 Propriétaire| Publié sur 06/04/2017 15:17:20 |


Lors du chargement d’une classe pour la première fois, il faut d’abord attribuer des valeurs initiales à toutes les variables statiques selon le type, puis exécuter plusieurs variables statiques en séquence pour la valeur droite attachée avec les bonnes valeurs
Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com