Có lý do chính đáng nào để sử dụng các tham số mà trường bóng không? sự khác biệt giữa hai là gì:Có lý do chính đáng nào để sử dụng các tham số cho các trường bóng không?
public class Point {
public int x = 0;
public int y = 0;
//constructor
public Point(int a, int b) {
x = a;
y = b;
}
}
và
public class Point {
public int x = 0;
public int y = 0;
//constructor
public Point(int x, int y) {
this.x = x;
this.y = y;
}
}
Và những gì nếu bạn sử dụng các từ khóa this
không có tham số mà các lĩnh vực bóng trong ví dụ này (Tôi đoán nó chỉ là không cần thiết):
public class Point {
public int x = 0;
public int y = 0;
//constructor
public Point(int a, int b) {
this.x = a;
this.y = b;
}
}
Và ngay cả khi các trường là không được công khai, chúng thường tiếp xúc bởi các API công cộng của lớp (thu khí, setters, phương pháp), hoặc một phần trạng thái của đối tượng như mô tả trong javadoc lớp. Sử dụng tên phù hợp thực sự hữu ích. –