Java接口和多态练习

需求:

  1. 定义手机类

​ 行为:打电话,发短信

  1. 定义接口IPlay

​ 行为:玩游戏

  1. 定义旧手机类继承手机类

​ 行为:继承父类的行为

  1. 定义新手机继承手机类实现IPlay接口

    行为:继承父类的行为,重写玩游戏方法

  2. 定义测试类

​ 在测试类中定义一个 用手机的方法,要求该方法既能接收老手机对象,也能接收新手机对象

​ 在该方法内部调用打电话,发短信以及新手机特有的玩游戏方法
同时创建的方法要实现多态性

代码演示:
//手机类
public class Phone {  public  void call(){  System.out.println("打电话");  }  public  void message(){  System.out.println("发信息");  }  
}//接口IPlay
public interface IPlay {  public abstract void playGame();  
}//旧手机类
public class OlderPhone extends Phone{  }//新手机
public class NewPhone extends Phone implements IPlay{  @Override  public void playGame() {  System.out.println("新手机可以玩游戏");  }  
}//测试类
public class Test {  public static void main(String[] args) {  //创建对象并向上转型Phone np = new NewPhone();  Phone op = new OlderPhone();  //testPhone(np);  //新手机的测试  testPhone(op);  //旧手机的测试}  public static void testPhone(Phone p){p.call();  p.message();//通过instanceof判断父类是否通过 子类NewPhone()实现的if(p instanceof NewPhone){  //要向下转型实现子类的方法((NewPhone) p).playGame();  }}  
}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部