原题是:以接口与实现类为例说明向下转型和向下转型是怎么实现的?以下是我用代码举的例子,不知道符不符合题意要求?请帮忙看看//父类public class Telphone { public void call() { System.out.println("接打电话"); } public void message() { System.out.println("收发短信"); }}//子类public class SmartPhone extends Telphone implements IPlayGame { @Override public void playGame() { System.out.println("SmartPhone可以玩游戏了"); }}//接口public abstract interface IPlayGame { public void playGame();}//main函数public class Initail { public static void main(String[] args) {//向下转型 SmartPhone smartphone = new SmartPhone(); smartphone.call(); if(smartphone instanceof IPlayGame){ IPlayGame i = (IPlayGame)smartphone; i.playGame(); }//接口无法向上转型。因为所属抽象类无法创建对象。 }}很少来提问,不知道看起来会不会不顺眼。因为据说这是一套面试题,所以就问详细一点,还有几个问题: 为什么要对接口进行向下转换和向上转换? 直接创建对象就好了,为什么要向上或向下转型呢?我没明白这个作用是什么? 怎么去论述:向上转型和向下转型是怎么实现的?(从哪方面?)
添加回答
举报
0/150
提交
取消