Tôi đang duyệt qua nguồn Android, chỉ cần đọc nó, và tôi đã gặp một đoạn mã lạ ở số Android.Util.JsonReader
. Nó như sau:Phạm vi Java đặc biệt
private final List<JsonScope> stack = new ArrayList<JsonScope>();
{
push(JsonScope.EMPTY_DOCUMENT);
}
Điều này làm chính xác điều gì? Tức là, phạm vi ngay sau nhiệm vụ new
? Nếu tôi hiểu chính xác, bất cứ khi nào lớp này, JsonReader
được khởi tạo, (không phải tĩnh, phải không?), stack
sẽ được khởi tạo tại đây, thay vì thông qua một this.stack = ...
trong hàm tạo, đúng không?
Phạm vi đó sẽ làm gì? Việc đó có được thực thi sau stack
được khởi tạo không? Tôi chỉ là một chút bối rối ở đây, như tên của mô hình này, và việc sử dụng nó.
gì sau đó gây nên không? Chúng có thể là nhiều cái khác nhau, có lẽ là sau các trường lớp khác nhau? – Josh
Cảm ơn, đó là một số liên kết tuyệt vời. Một câu hỏi mặc dù, tại sao nó xuất hiện ngay lập tức sau lĩnh vực cụ thể đó? Nó chỉ dành riêng cho lớp học này? Có ~ 6 trường theo sau 'stack', trước hàm tạo lớp và khoảng cùng số tiền trước đó. – Josh
Tôi cho rằng nó chỉ ở đó vì nó thao tác trường chồng thông qua cuộc gọi push. –