你要问的应该是所谓的 downcast
Java 语法上使用一般的 cast 即可 (就是前面摆一对括号里面放型态)
不过当来源跟目标都是 reference 型态且这两种型态间没有上下继承关系的话
javac 会 compile error 告诉你无论如何这都转不过去
如果是 upcast (转成父类别) 那什么事都没有
(事实上 upcast 可以隐式进行, 这也是你已经在程式里做过的)
downcast 时编译会过, 但如果实际上转不过去的话会扔 ClassCastException 出来
所以你其实只需要用普通的 cast 语法即可
如果要写的小心一点就外面包个 try/catch 接 ClassCastException 处理错误状况
要不然就是用 instanceof 先检查那确实是你要的类别再转