エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
再帰ジェネリクスのthisとTの互換性 - プログラマーの脳みそ
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
再帰ジェネリクスのthisとTの互換性 - プログラマーの脳みそ
再帰ジェネリクスを用いて以下のようなコードを書いたとする。 Hogeを継承した型を作った場合に具象型を... 再帰ジェネリクスを用いて以下のようなコードを書いたとする。 Hogeを継承した型を作った場合に具象型を得るgetThis()メソッドを使えるようにしたいわけだ。 public class Hoge<T extends Hoge<T>> { @SuppressWarnings("unchecked") public T getThis() { return (T) this; } } このHoge型のTに型をバインドするには継承を用いる。一部の方にはおなじみですね。 public class Piyo extends Hoge<Piyo> {} こうした場合、Piyo型にはなんの実装も行っていないが Piyo p = new Piyo(); Piyo t = piyo.getThis(); というように、スーパークラスの実装によりgetThis()からPiyo型をとることができる。 型の安全