11月5日
[实验任务一]:婚介所
婚介所其实就是找对象的一个代理,请仿照我们的课堂例子“论坛权限控制代理”完成这个实际问题,其中如果年纪小于18周岁,婚介所会提示“对不起,不能早恋!”,并终止业务。
实验要求:
1. 提交类图;
2. 提交源代码;
3. 注意编程规范。
实验内容:类图:
源代码:package org.example;
-
import java.util.Scanner;
public class Client {
public static void main(String[] args) {
AbstractMatchMaking amm=new MatchMakingProxy();
System.out.println("*******欢迎来到婚介所*******");
System.out.println("您可以简单浏览一下我们的嘉宾信息....");
amm.viewInformation();
System.out.println("*******请登记一下您的基本信息*******");
System.out.println("您的年龄:");
Scanner in =new Scanner(System.in);
int age=in.nextInt();
amm.improveInformation(age);
if(age>=18) {
amm.postAnnouncement();
}
}
}package org.example;
public interface AbstractMatchMaking {
public void viewInformation();
public void postAnnouncement();
public void improveInformation(int age);
}package org.example;
public class MatchMaking implements AbstractMatchMaking {
@Override
public void viewInformation() {
System.out.println("您正在浏览查看婚介对象的基本信息");
}
@Override
public void postAnnouncement() {
System.out.println("您发布了一条征婚启事,请注意查收结果消息");
}
@Override
public void improveInformation(int age) {
}
}package org.example;
public class MatchMakingProxy implements AbstractMatchMaking {
private MatchMaking client = new MatchMaking();
private int age = 18;
@Override
public void viewInformation() {
System.out.println("您正在浏览查看婚介对象基本信息");
}
@Override
public void postAnnouncement() {
if (age >= 18) {
System.out.println("发布征婚启事");
} else if (age < 18) {
System.out.println("对不起,不能早恋!");
}
}
@Override
public void improveInformation(int age) {
this.age = age;
if (age < 18) {
System.out.println("对不起,不能早恋!");
} else if (age >= 18) {
System.out.println("信息登记完成......");
}
}
}运行截图: