閱讀以下說明和 Java程序,填補(bǔ)代碼中的空缺,將解答填入答題紙的對應(yīng)欄內(nèi)。
【說明】
以下Java代碼實(shí)現(xiàn)一個(gè)簡單客戶關(guān)系管理系統(tǒng)(CRM)中通過工廠(CustomerFactory )對象來創(chuàng)建客戶(Customer)對象的功能。客戶分為創(chuàng)建成功的客戶(RealCustomer)和空客戶 (NullCustomer)??湛蛻魧ο笫钱?dāng)不滿足特定條件時(shí)創(chuàng)建或獲取的對象。類間關(guān)系如圖 5-1 所示。
圖5-1 類圖
【Java代碼】
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 is Nil() {   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 < names.length;i++) {
if (names[i].(   5   ))﹛
return new RealCustomer(name);
﹜
﹜
return (   6   );
﹜
﹜
Public class CrM﹛
Public viod get Customer()﹛
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 viod main (String[]arge)﹛
CRM crm =new CRM();
Crm.getCustomer();
﹜
﹜
/*程序輸出為:
Customers
rob
Not Available in Customer Database
Julie
Not Available in Customer Database
*/
							
