私が理解するところでは、ゲッターとセッターは、すべての変数や状況に使用することをお勧めします。ここでゲッターとセッターを使用しない場合がありますか?
私は私が知りたい、私はこのような状況でそれらを残すことができますか、その悪い習慣である彼らは単にコードが長いと厄介作っているようで、ここでの状況を持っている...しかし
私が持っています次のクラス -
public class Conversation {
class Message
{
private int id;
private int senderId;
private Timestamp timeSent;
private String text;
}
private int conversationId;
private int userIdA;
private int userIdB;
private ArrayList<Message> messages = new ArrayList<Message>();
...
... (Getters and setters for members of Conversation)
...
}
私は会話のメンバー変数にゲッターとセッターを使用しています。しかし、私は内部クラス、メッセージ、変数のためにそれらを使用したくありません。フィラーのコードに約30行追加するだけで、はるかに扱いにくくなります。それで、ここにそれらを残すことは悪い習慣ですか? Message変数を編集することは決してないでしょう。それらはコンストラクタMessage(...、...、...、...)への呼び出しで設定され、その後はただ読み込まれます。だから私は間違いなくゲッタを残してもいいと思いますが、セッターはどうですか?
編集しない場合は、最終的に宣言できます。 –
http://stackoverflow.com/questions/565095/java-are-getters-and-setters-evil – assylias
また、会話クラスでのみMessageクラスを使用する場合は、Message privateを宣言してanyを省略することができますMessageクラス内のアクセス修飾子。 –