java-se - Java:请教这段代码的执行顺序(如图)?万分感谢
大家讲道理
大家讲道理 2017-04-18 10:37:26
0
2
260
大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

répondre à tous(2)
Peter_Zhu

J'ai lu un article avant qui parlait de ce problème de commande importNewJe l'ai cherché mais je ne l'ai pas trouvé. Le chargement de classe charge d'abord les attributs et blocs static de la classe parent, puis charge ses propres attributs et blocs statiques, dans l'ordre de haut en bas. Lors de la construction d'un objet, appelez toujours d'abord le constructeur de la classe parent, puis appelez son propre constructeur. Dans votre exemple ci-dessus, vous chargez d'abord la classe App. Qui aurait pensé que son premier attribut static devait réellement construire un objet de son propre type ? Cela ignore les autres attributs static et bloque directement le constructeur. Oui, le constructeur lui-même imprime un App, mais le programme ajoutera 4 au-dessus du constructeur après la compilation. Pour cela, vous pouvez vérifier le fichier de bytecode généré par la compilation, puis le charger et construire objets, l'ordre est mentionné ci-dessus. SubClass t = new SubClass();

大家讲道理

Savez-vous comment déboguer avec des points d'arrêt ? Vous pouvez utiliser les points d'arrêt Eclipse pour déboguer et voir la séquence d'exécution du code et des instantanés des données

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal