「5.1.6. 縮幅参照変換」の編集履歴(バックアップ)一覧はこちら
「5.1.6. 縮幅参照変換」(2012/09/18 (火) 14:33:43) の最新版変更点
追加された行は緑色になります。
削除された行は赤色になります。
*[[5. 変換と昇格]]
**[[5.1. 変換の種類]]
***[[5.1.1. 恒等変換]]
***[[5.1.2. 拡幅プリミティブ変換]]
***[[5.1.3. 縮幅プリミティブ変換]]
***[[5.1.4. 拡幅と縮幅プリミティブ変換]]
***[[5.1.5. 拡幅参照変換]]
***5.1.6. 縮幅参照変換
以下の6種類の変換は縮幅参照変換と呼ばれます。:
-SはTの適切な[[スーパータイプ>4.10. サブタイプ化]]である任意の参照型Sから任意の参照型Tへの変換。
重要で特別な事例として&tt(){Object}クラス型から任意の他の参照型への縮幅参照変換があります([[4.12.4.>4.12.4. final変数]])。
-&tt(){final}ではなくKを実装してもいない任意のクラス型Cから任意の非引数付きインタフェース型Kへの変換。
-任意のインタフェース型Jから&tt(){final}ではない任意の非引数付きクラス型Cへの変換。
-JはKの適切なスーパーインタフェースではない任意のインタフェース型Jから任意の非引数付きインタフェース型Kへの変換。
-インタフェース型&tt(){Cloneable}と&tt(){java.io.Serializable}から任意の配列型T[]への変換。
-任意の配列型SC[]から任意の配列型TC[]への変換。ここで、SCとTCは参照型であり、SCからTCへは縮幅参照変換。
これらの変換は実際の参照値が新しい型の正当な値かどうか判断するために実行時に検査されます。もし正当でないなら、&tt(){ClassCastException}がスローされます。
***[[5.1.7. ボックス化変換]]
***[[5.1.8. ボックス化解除変換]]
***[[5.1.9. 未検査変換]]
***[[5.1.10. 捕捉変換]]
***[[5.1.11. 文字列変換]]
***[[5.1.12. 禁止変換]]
***[[5.1.13. 値集合変換]]
**[[5.2. 代入変換]]
**[[5.3. メソッド呼び出し変換]]
**[[5.4. 文字列変換]]
**[[5.5. キャスト変換]]
**[[5.6. 数値昇格]]
*[[5. 変換と昇格]]
**[[5.1. 変換の種類]]
***[[5.1.1. 恒等変換]]
***[[5.1.2. 拡幅プリミティブ変換]]
***[[5.1.3. 縮幅プリミティブ変換]]
***[[5.1.4. 拡幅と縮幅プリミティブ変換]]
***[[5.1.5. 拡幅参照変換]]
***5.1.6. 縮幅参照変換
以下の6種類の変換は&i(){縮幅参照変換(narrowing reference conversion)}と呼ばれます。:
-SはTの適切な[[スーパータイプ>4.10. サブタイプ化]]である任意の参照型Sから任意の参照型Tへの変換。
重要で特別な事例として&tt(){Object}クラス型から任意の他の参照型への縮幅参照変換があります([[4.12.4.>4.12.4. final変数]])。
-&tt(){final}ではなくKを実装してもいない任意のクラス型Cから任意の非引数付きインタフェース型Kへの変換。
-任意のインタフェース型Jから&tt(){final}ではない任意の非引数付きクラス型Cへの変換。
-JはKの適切なスーパーインタフェースではない任意のインタフェース型Jから任意の非引数付きインタフェース型Kへの変換。
-インタフェース型&tt(){Cloneable}と&tt(){java.io.Serializable}から任意の配列型T[]への変換。
-任意の配列型SC[]から任意の配列型TC[]への変換。ここで、SCとTCは参照型であり、SCからTCへは縮幅参照変換。
これらの変換は実際の参照値が新しい型の正当な値かどうか判断するために実行時に検査されます。もし正当でないなら、&tt(){ClassCastException}がスローされます。
***[[5.1.7. ボックス化変換]]
***[[5.1.8. ボックス化解除変換]]
***[[5.1.9. 未検査変換]]
***[[5.1.10. 捕捉変換]]
***[[5.1.11. 文字列変換]]
***[[5.1.12. 禁止変換]]
***[[5.1.13. 値集合変換]]
**[[5.2. 代入変換]]
**[[5.3. メソッド呼び出し変換]]
**[[5.4. 文字列変換]]
**[[5.5. キャスト変換]]
**[[5.6. 数値昇格]]
表示オプション
横に並べて表示:
変化行の前後のみ表示: