使用多态特性,创建一个手机类 Phones,定义拨打电话的方式,创建三个子类并重写各自的方法,编写程序入口 main 方法以实现多个手机呼叫
最编程
2024-03-18 12:14:08
...
1 import java.util.Scanner;
2 public class User {
3 static Scanner sc = new Scanner(System.in);
4
5 public static void main(String[] args) {
6 //设定一个布尔变量,用于判定是不是要继续打电话
7 boolean flag = false;
8 //设定一个接受用户输入的变量
9 String answer;
10 //创建工厂类的实例
11 BaseStation ba = new BaseStation();
12 //创建一个变量用于传递参数
13 String str;
14 do {
15 System.out.println("请问要使用什么手机打电话?1.Iphoen 2.Aphone 3或其他任意键.Wphoen");
16 answer = sc.next();
17 //如果用户按提示按键选择,则str得到一个具体的值
18 if ("1".equals(answer)){
19 str = "iphone";
20 }else if("2".equals(answer)){
21 str = "aphone";
22
23 }else {
24 str = "wphone";
25 }
26 //将工厂类加工的方法传递给抽象产品类
27 Phones phones = ba.callPhone(str);
28 //抽象产品父类动态绑定具体产品类的方法
29 phones.call();
30 System.out.println("还要打电话吗?按n退出,按其他任意字符继续打电话......");
31 answer = sc.next();
32 //按“n”退出,按其他任意键继续
33 if ("n".equals(answer)){
34 flag = true;
35 }
36 System.out.println("************-------------**********\n\n");
37
38 }while (!flag);
39 System.out.println("嗯,再见,你再用这么多手机打电话老子打死你");
40
41 }
42 }