Java에서 브래킷 만 허용하는 이유는 무엇입니까?? 무엇을 위해 만들어 졌는가?중괄호 만 사용하는 방법
{
// Do something
}
나는 또한이 static-block 후하지만 생성자 전에 자동으로 실행됩니다 것으로 나타났습니다. 수퍼 클래스의 생성자는 이전에 실행되었지만.
이 주문에 대한 특별한 이유가 있습니까? 출력으로서
public class TestClass extends TestSuperClass {
public TestClass() {
System.out.println("constructor");
}
@Test
public void test() {
System.out.println("test");
}
{
System.out.println("brackets");
}
static {
System.out.println("static");
}
}
public class TestSuperClass {
public TestSuperClass() {
System.out.println("super class constructor");
}
{
System.out.println("super class brackets");
}
static {
System.out.println("super class static");
}
}
는 I 얻을 :
super class static
static
super class brackets
super class constructor
brackets
constructor
test
* "이 주문에 대한 특별한 이유가 있습니까?"- JLS 15.9.4 - http://docs.oracle.com/javase/specs/jls/se8/html/jls-15에서 설명합니다. html # jls-15.9.4 –