Я наткнулся на этот блок кода Java, который, кажется, бросает вызов правилам синтаксиса:Двойные Конструкторы блоки кода, статический блок кода в Java
1. public class Sequence {
2. Sequence() { System.out.print("c "); }
3. { System.out.print("y "); }
4. public static void main(String[] args) {
5. new Sequence().go();
6. }
7. void go() { System.out.print("g "); }
8. static { System.out.print("x "); }
9. }
по отношению к линии 3, как бы независимый блок кода будет так открылся? Я тестировал его, и это сработало. Однако логика движется в обратном порядке: y будет напечатано до c.
Кроме того, со ссылкой на строку 8, я не уверен, что этот блок пытается сделать. Это похоже на объявление класса. В этом случае не следует, чтобы ключевое слово static сопровождалось именем класса?
Может кто-то прояснить мои сомнения? Спасибо.
http://docs.oracle.com/javase/tutorial/java/javaOO/initial.html –
Спасибо, что указали мне правильную страницу. – LanceHAOH