Nếu tôi viết lớp sau:Việc sử dụng "này" trong Java
public class Example {
int j;
int k;
public Example(int j, int k) {
j = j;
k = k;
}
public static void main(String[] args) {
Example exm = new Example(1,2);
System.out.println(exm.j);
System.out.println(exm.k);
}
}
Chương trình biên dịch, nhưng khi tôi chạy chương trình, phương pháp chính sẽ in ra hai 0s. Tôi biết rằng để nói rằng tôi muốn khởi tạo các biến Ví dụ trong constructor tôi phải viết:
this.j = j;
this.k = k;
Nhưng nếu tôi không viết nó, sau đó biến được đánh giá (hoặc xem xét) trong constructor (ở bên trái và trên mặt viết của các biểu thức)? Là đối số hoặc biến mẫu? Liệu nó có làm cho một sự khác biệt?
Có trường hợp nào khác khi bắt buộc sử dụng this
không?
Loại lỗi này là lý do chính đáng để làm cho thông số của bạn cuối cùng. –
Bạn cũng có thể xem: http://stackoverflow.com/questions/132777/do-you-prefix-your-instance-variable-with-this-in-java – VonC
Ở một trong những nơi tôi đã làm việc, họ không bao giờ cho phép các tham số được thay đổi nhưng cũng không bao giờ cho phép các tham số được đánh dấu "cuối cùng" là tốt. Và tôi giống như kiểu đó. Đó là, err, phong cách :) – Srikanth