Hãy nói rằng tôi có một lớp học như thế này (và cũng có thể tiếp tục giả định rằng tất cả các biến tin:Java: Bắt các thuộc tính của một lớp học để xây dựng một chuỗi đại diện
public class Item {
private String _id = null;
private String _name = null;
private String _description = null;
...
}
Bây giờ, nếu tôi muốn xây dựng một toString() đại diện của lớp này, tôi sẽ làm một cái gì đó như thế này bên trong lớp Item:
@Override
public String toString() {
return (_id + " " + _name + " " + _description);
}
Nhưng nếu tôi có nói 15 biến tư nhân bên trong lớp tôi có phải viết tên của mỗi và mọi? biến số như thế này?
Lý tưởng nhất, tôi muốn vượt qua với nhiệm vụ bằng cách duyệt qua danh sách các biến riêng của lớp này và xây dựng chuỗi đại diện:
@Override
public String toString() {
ArrayList<String> members = getClass().getMembers(); //Some method like this
String string = "";
for(...)
string += members[i] + " ";
}
Hoặc có lẽ là một phương pháp toJSON, tôi vẫn sẽ cần truy cập vào tên của các biến này. Bất kỳ đề xuất?
Xem thêm [Auto-tạo toString Phương pháp] (http://stackoverflow.com/questions/2653268/auto -generating-tostring-method) – Vadzim