Bonjour,
Lors d'un entretien, je suis tombé sur une question à laquelle je n'avais pas le début d'une réponse.
Soit la classe suivante (de mémoire) :
Quel est l'ordre d'impression ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 public class Machin { { system.out.println("1"); } static { system.out.println("2"); } public Machin() { system.out.println("3"); } public static void main() { system.out.println("4"); Machin m = new Machin(); } }
J'ai répondu (je crois) : 2 4 1 3
Mais c'était au hazard. Une bonne âme connaitrait-elle les règles permettant de déterminer cet ordre à coup sur ?
ps : pourquoi utiliser, et dans quel cas, un bloc qui sort de nulle part, comme le bloc 1 ?
Merci
Partager