一部の Java クラスは、正しく機能するために、パブリックの getter と setter を持つプライベート プロパティを持つ必要があります。たとえば、JSF Bean と JPA エンティティにはそれらが必要です。これらのライブラリがなければ、getter や setter を持たないプロパティがいくつかあるはずです。また、多くの場合、空のコンストラクターはカスタム コードで使用することをお勧めしません。例えば
@Entity
public class MyEntity implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
public MyEntity() {}
public Long getId() {
return this.id;
}
public void setId(Long id) {
this.id = id;
}
}
このクラスでは、メソッド setId を手動コードで呼び出すことはできません。ただし、このメソッドは非推奨ではないため、@Deprecated アノテーションは間違っています。
@Deprecated 以外に、メソッドを使用しないように指示する方法はありますか?