私のソースの列挙体の一部をIntDefアノテーションに置き換えようとしています。私はthisの文書に従っています。IntDefを使用する型の安全性
以前は列挙型だったViewModeを保持するための変数があります。今私はそれを以下のようなものに変更しました。
今@Retention(RetentionPolicy.SOURCE)
@IntDef({ViewMode.VIEW_MODE_LIST_VIEW, ViewMode.VIEW_MODE_CARD_VIEW})
public @interface ViewMode {
int VIEW_MODE_LIST_VIEW = 0;
int VIEW_MODE_CARD_VIEW = 1;
}
@ViewMode
public int currentViewMode = ViewMode.VIEW_MODE_LIST_VIEW;
これは私がこの方法で
this.currentViewMode = 987; //currentViewMode should be 0 or 1. Nothing else.
を次のことを行っている。しかし、これは今私にコンパイルエラーを与えていない、安全であるかどうかをテストします。私はここに何かを逃していますか
"私にコンパイルエラーを与えています"(これはあなたが書いたものです)、または "**私にコンパイルエラーを出さない"という意味ですか? – mernst
@mernstそれを指摘してくれてありがとう。それは間違いでした。それを修正しました –