利用多态特性,编程创建一个手机类Phones,定义打电话方法call()。创建两个子类:苹果手机类IPhone和安卓手机类APhone,并在各自类中重写方法call(),编写程序入口main()方法,实现用两种手机打电话。再添加一个WindowsPhone手机子类WPhone,重写方法call(),修改代码实现用该手机打电话。
创建一个Phones的手机类:
/**
* Author:Xu Zheng Wei
* E-mail:2518298846@qq.com
* 程序功能:创建一个Phones的手机类。
*/
package phone;
/**
* 抽象手机类
*
*/
public abstract class Phones {
/**
* 抽象方法,实现打电话。
*/
public abstract void call();
}
创建一个苹果手机类:
/**
* Author:Xu Zheng Wei
* E-mail:2518298846@qq.com
* 程序功能:创建一个IPhone的苹果类。
*/
package phone;
/**
* 苹果手机类
*/
public class IPhone extends Phones {
/**
* 打电话
*/
public void call() {
System.out.println("苹果手机打电话");
}
}
创建一个安卓手机类:
/**
* Author:Xu Zheng Wei
* E-mail:2518298846@qq.com
* 程序功能:创建一个APhone的安卓类。
*/
package phone;
/**
* 安卓手机类
*/
public class APhone extends Phones {
/**
* 打电话
*/
public void call() {
System.out.println("安卓手机打电话");
}
}
创建一个windows Phone手机子类:
/**
* Author:Xu Zheng Wei
* E-mail:2518298846@qq.com
* 程序功能:增加一个Windows Phone手机子类WPhone。
*/
package phone;
/**
* windows Phone手机子类
*/
public class WPhone extends Phones {
/**
* 打电话
*/
public void call() {
System.out.println("WPhone手机打电话");
}
}
测试类,实现各种手机打电话:
/**
* Author:Xu Zheng Wei
* E-mail:2518298846@qq.com
* 程序功能:测试调用安卓、苹果、WPhone手机打电话。
*/
package phone;
/**
* 测试类,实现各种手机打电话
*/
public class TestCall {
public static void main(String[] args) {
//创建安卓手机对象并打电话
Phones aPhone=new APhone();
aPhone.call();
//创建苹果手机对象并打电话
Phones iPhone=new IPhone();
iPhone.call();
//创建windows Phone对象并打电话
Phones wPhone=new WPhone();
wPhone.call();
}
}
运行结果如下: