こちらのAndroidドキュメント:http://developer.android.com/guide/components/fragments.htmlフラグメントはインターフェースを実装します。
onAttach()コールバックでは、現在のアクティビティをインターフェイスにキャストしているようです。概念的には、これはどのように可能であり、バニラJavaでの同じタイプのキャスト標準プラクティスですか?
public static class FragmentA extends ListFragment {
// Container Activity must implement this interface
public interface OnArticleSelectedListener {
public void onArticleSelected(Uri articleUri);
OnArticleSelectedListener mListener;
@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
try {
mListener = (OnArticleSelectedListener) activity;
} catch (ClassCastException e) {
throw new ClassCastException(activity.toString() + " must implement OnArticleSelectedListener");
}
}
...
}