Abstract class Customer﹛ protected String name; (1) boolean isNil(); (2) String getName(); ﹜ class RealCustomer(3) Customer { public RealCustomer(String name) { this.name = name; } public String getName() { return name; } public boolean isNil() { return false; } ﹜ class NullCustomer(4) Customer﹛ public String getName()﹛ return "Not Available in Customer Database";﹜ public boolean isNil()﹛ return true;﹜ ﹜ class Customerfactory { public String[] names = { "Rob", "Joe", "Julie" }; public Customer getCustomer(String name) { for(int i = 0; i if(names[i].(5))﹛ return new RealCustomer(name);﹜﹜ return(6); ﹜ ﹜ public class CrM﹛ public void getCustomer()﹛ Customerfactory(7); Customer customer1 - cf.getCustomer("Rob"); Customer customer2 = cf.getCustomer("Bob"); Customer customer3 = cf.getCustomer("Julie"); Customer customer4 = cf.getCustomer("Laura"); System.out.println("customers”) System.out.println(customer1.getName()); System.out.println(customer2getName()); System.out.println(customer3.getName()); System.out.println(customer4.getName()); ﹜ public static void main(String[] arge)﹛ CRM crm = new CRM(); Crm.getCustomer(); ﹜ ﹜ /*程序输出为: Customers rob Not Available in Customer Database Julie Not Available in Customer Database */