package cn.happy3; public class Intell extends Phone { @Override public void call() { System.out.println("我是智能机"); } } package cn.happy3; public class Main { public static void main(String[] args) { Phone phone=PhoneFactory.getInstance("11"); phone.call(); } } package cn.happy3; public abstract class Phone { public abstract void call(); } package cn.happy3; public class PhoneFactory { public static Phone getInstance(String type){ Phone phone=null; switch(type){ case "11": phone=new Intell(); break; case "22": phone=new priginal(); break; } return phone; } } package cn.happy3; public class priginal extends Phone { @Override public void call() { System.out.println("我是老年机"); } }