@Override
public String toString() {
return new Gson().toJson(this);
}
Tôi có vi phạm một số thực hành hay không, "Joshua" -pattern điều, mẫu thiết kế chung hoặc quy ước khác bằng cách làm điều này như hành vi mặc định cho các đối tượng mô hình của tôi?OK để sử dụng đầu ra JSON làm mặc định cho toString()?
toString()
sẽ bằng cách nào đó chỉ được sử dụng trong gỡ lỗi trong mô hình (Android) mà chúng tôi hiện đang sử dụng. Đó cũng là lý do tại sao tôi thích nhìn thấy đối tượng trong JSON vì nhiều sự kiên trì ORM/json sẽ xảy ra thông qua http-> php/python-> mysql và đến SQLite cục bộ.
Bạn không vi phạm bất cứ điều gì. 'toString()' có thể trả về bất kỳ chuỗi nào (nhưng nó có thể trả về cùng một chuỗi mỗi khi bạn gọi nó trên cùng một cá thể, trừ khi trạng thái bên trong của cá thể thay đổi). –
có, đó là prerequesite nếu được cho là ... duy nhất (?) Cho toString(). Theo yêu cầu của quy ước là – tortal
@SotiriosDelimanolis: không phải nếu trạng thái nội bộ của cá thể thay đổi. –