Mã sau đây có phải là trường hợp tham chiếu về phía trước pháp lý không? nếu đúng thì tại sao?Tham chiếu Chuyển tiếp Pháp lý Java
public class MyClass
{
private static int x = getValue();
private static int y = 5;
private static int getValue()
{
return y;
}
public static void main(String[] args)
{
System.out.println(x);
}
}
Trường hợp nào không phải là biến và phương pháp tĩnh? – Vibhor
Tôi tin rằng hành vi là như nhau - khởi tạo đầu tiên thiết lập mọi thứ về giá trị mặc định, sau đó khởi tạo từng giá trị được chỉ định, sau đó gọi hàm tạo. – templatetypedef
Mà, btw, là một trong những lý do bạn không bao giờ nên gọi một phương thức không cuối cùng (hoặc tư nhân) từ một hàm tạo; quá dễ để ai đó có thể ghi đè phương thức đó và thấy một 'điều này' chưa được xây dựng, thậm chí đến mức nhìn thấy một trường cuối cùng chưa được khởi tạo. – yshavit