
我从第一年开始帮助一位朋友准备他的Java考试.老师要求他们创建一种可以将音乐家投射到诗人的方法.
没有人知道该怎么做.在思考了一段时间之后,我得出的结论是,不可能这样做(ClassCastException),因为Musician和Poet共享一个接口的事实不足以将它们转移到另一个接口上.
我认为只有在相同的继承链中才有可能.
现在我有三个问题:
ClassCastException. 你可以尝试:
Musician musician = new Musician();
Artist artist = musician;
Poet poet = (Poet)artist;
Run Code Online (Sandbox Code Playgroud)
但当然,该代码实际上不会在运行时运行。