[實驗任務一]:婚介所
婚介所其實就是找物件的一個代理,請仿照我們的課堂例子“論壇許可權控制代理”完成這個實際問題,其中如果年紀小於18週歲,婚介所會提示“對不起,不能早戀!”,並終止業務。
實驗要求:
1. 提交類圖;
2. 提交原始碼;
複製程式碼 1 package tutorial14; 2 3 import java.util.Scanner; 4 5 public class Client { 6 7 public static void main(String[] args) { 8 // TODO 自動生成的方法存根 9 10 AbstractMatchMaking amm=new MatchMakingProxy(); 11 System.out.println("*******歡迎來到婚介所*******"); 12 System.out.println("您可以簡單瀏覽一下我們的嘉賓資訊...."); 13 amm.viewInformation(); 14 System.out.println("*******請登記一下您的基本資訊*******"); 15 System.out.println("您的年齡:"); 16 Scanner in =new Scanner(System.in); 17 int age=in.nextInt(); 18 amm.improveInformation(age); 19 if(age>=18) { 20 amm.postAnnouncement(); 21 } 22 23 } 24 25 } 複製程式碼 複製程式碼 1 package tutorial14; 2 3 public interface AbstractMatchMaking { 4 5 public void viewInformation(); 6 public void postAnnouncement(); 7 public void improveInformation(int age); 8 } 複製程式碼 複製程式碼 1 package tutorial14; 2 3 public class MatchMaking implements AbstractMatchMaking{ 4 5 @Override 6 public void viewInformation() { 7 // TODO 自動生成的方法存根 8 System.out.println("您正在瀏覽檢視婚介物件基本資訊"); 9 } 10 11 @Override 12 public void postAnnouncement() { 13 // TODO 自動生成的方法存根 14 System.out.println("您釋出了一條徵婚啟事,請注意查收結果訊息"); 15 } 16 17 @Override 18 public void improveInformation(int age) { 19 // TODO 自動生成的方法存根 20 21 } 22 23 } 複製程式碼 複製程式碼 1 package tutorial14; 2 3 public class MatchMakingProxy implements AbstractMatchMaking{ 4 5 private MatchMaking client=new MatchMaking(); 6 private int age=18; 7 @Override 8 public void viewInformation() { 9 // TODO 自動生成的方法存根 10 System.out.println("您正在瀏覽檢視婚介物件基本資訊"); 11 12 } 13 14 @Override 15 public void postAnnouncement() { 16 // TODO 自動生成的方法存根 17 if(age>=18) { 18 System.out.println("釋出徵婚啟事"); 19 }else if(age<18) { 20 System.out.println("對不起,不能早戀!"); 21 } 22 } 23 24 @Override 25 public void improveInformation(int age) { 26 // TODO 自動生成的方法存根 27 28 this.age=age; 29 if(age<18) { 30 System.out.println("對不起,不能早戀!"); 31 }else if(age>=18) { 32 System.out.println("資訊登記完成......"); 33 } 34 } 35 36 } 複製程式碼