問題タブ [upcasting]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
45 参照

java - Java アップキャストのネストされた型パラメータ

Foo<String>以下の Java コードを考えると、アップキャストがFoo<object>機能しない理由を知りたいですか? 基本的に、Java に が のサブクラスである場合、はTのサブクラスであることを伝えたいと思います。Scalaでこれを行う方法があることは知っていますが、Javaでこれを行う方法はありますか? そうでない場合、以下のコードをコンパイルするための回避策はありますか?SFoo<T>Foo<S>

0 投票する
2 に答える
237 参照

c++ - null ポインターをアップキャストすると、未定義の動作が発生しますか

次のコードが未定義の動作につながるかどうか疑問に思っています:

0 投票する
1 に答える
118 参照

java - Java ポリモーフィズム - 参照変数の問題

私はJavaとポリモーフィズムを学んでいます。私はJavaでブックヘッドスタートを使用しています。私はそれらを実験しようとしていました。呼び出すことができるメソッドは参照オブジェクトに依存することを学びました。そこで、このコードを作成しました

問題の原因の 1 つは、「Dog 3 テスト」がコンソールに表示されないことです。IT は Dog 2 まで正常に動作していますが、Dog 3 は動作していません。

ここに私の動物のクラスがあります

0 投票する
0 に答える
22 参照

c++ - アップキャストによるプライベート関数の呼び出し

次のクラスでは、派生オブジェクトをベース ポインターにアップキャストします。次に、メインから派生した「プライベート」メンバー関数を呼び出すことができます。これはどのように可能ですか?私の推測では、関数を呼び出す (つまり、アクセスする) ことができるかどうかは、L 値 (Base* b) に基づいています。どの関数が呼び出されるかは、仮想であるため R-value(new Derived) に基づいています。誰かが私のためにこれを明確にしてもらえますか?

私の出力は

0 投票する
2 に答える
288 参照

c++ - C++のアップキャストとダウンキャスト

私は基本クラスへのポインターをいじっていましたが、四角形のポインターを円のポインターにキャストし、四角形printradius()から関数を呼び出しました! 誰かがこれが許可されている理由を説明できますか? ありがとう。

出力:

円の半径は 2