アプリ版:「スタンプのみでお礼する」機能のリリースについて

インスタンス ダウンキャストについて以下の解釈であっているか教えて欲しいです。

サブクラスをスーパークラス型としてインスタンス化する。
サブクラス型として扱えるように(ダウンキャスト)、アップキャストしたインスタンスをサブクラス型でキャストする。
・ソースコード
super s = new sub();
sub c = (sub)s;

A 回答 (1件)

superは予約語なんで型名には使えないと思いますが



それは置いといて

>サブクラスをスーパークラス型としてインスタンス化する。

はちょっとちがう。

サブクラスのインスタンスの参照は
そのスーパークラス型の変数と代入互換性がある。

ということ。

インスタンス化するのはあくまでサブクラス型で
スーパークラスではない。

スーパークラス型の変数は
様々なサブクラスのインスタンスを保持できる。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!