2

オブジェクト A とオブジェクト B の 2 つのオブジェクトがあります。A には色とサイズのプロパティがあり、B には色、サイズ、深さのプロパティがあります。

A も B も、抽象クラスである C から継承します。

実行時に B を A に変換するにはどうすればよいですか?

 abstract class C {

 }

 Class A: C {
     int color;
     int size;
 }

 Class B: C {
     int color;
     int size;
     int depth;
 }

 main() {
     //creating object A
     A objA = new A();
     A.color = 46;
     A.size = 90;

     //creating object B
     B objB = new B();
     B.color = 23;
     B.size = 10;
     B.depth = 78;

     //How to do casting 
     A = B;
 }
4

4 に答える 4

0

このようには機能しません。内部にほぼ同じ属性を持つ2つの異なる変数を作成していますか?! なんでそうなの?

共通フィールドを基本クラスにキャストできます! ここが一番いい方法です。

于 2013-07-03T06:19:16.937 に答える