代理模式-租房

需求:
1、某租客Mike要租房,需要和房东签约,如:sign(String houseOwner)。
2、但是租房还有很多其它事情:
找很多房子:searchHouse(),检查房子:checkHouse()。
这些东西Mike必须做,但不想自己做,所以就把这些工作交给房屋中介来做。
中介:就是代理(proxy)。
操作:
1、定义租房接口:IRent,方法:sign(String houseOwner)
2、定义租客类:Customer,实现接口,和房东完成真实签约。
3、定义中介类:HouseProxy,也实现接口IRent。
同时引用真实租客类:IRent realCustomer,完成客户签约。
另外,实现自己的私有(特有)方法,如:searchHouse和checkHouse。
并在接口方法中调用。
4、定义StartProxy类中提供main方法。
定义方法,完成顾客租房动作,方法定义为:runRent(IRent rentObj)。
说明:rentObj可以是真实租房的,也可以是中介租房的,因为它们都是IRent类型。

posted @ 2022-06-07 10:55  xiaoyongdata  阅读(108)  评论(0)    收藏  举报