我知道铸造真的只能从一个子类到一个超类(向上铸造),但这个例子说明了我想做的事情.
Class Super {} Class Sub extends Super {} Super super = new Super(); Sub sub = (Sub)super;
我相信这被称为“下”铸造,这是不允许的…
创建类型为Sub的对象的最佳方法是给出一个类型为Super的对象.
编辑:
这就是问题 – 将动物转化为猫的最佳方式是什么?
答案?从基本类型的动物开始,并将属性复制到猫.添加毛皮和尾巴等.基本上是一个复制构造函数.这是正确的答案(还是一个很好的答案)?
其他编辑:
我认为我的问题很清楚,但也许是一般的.要求“最好”的方式做某事往往会给出很多不同的回应.我意识到最好的方式可以在不同的情况下有所不同.
我不是在寻找有关Java或OO基础知识的教程.只是钓鱼的意见,所以我可以解决这个问题,因为我已经概述了使用最佳做法.