您的位置:首页 > 其它

装饰者模式

2016-01-03 20:54 281 查看


创建抽象装饰类Decorator,包含一个MobilePhone类型的私有变量。

1 public class Decorator extends MobilePhone{
2
3     private MobilePhone _mobilePhone;
4
5     public Decorator(MobilePhone mobilePhone){
6         _mobilePhone=mobilePhone;
7         phoneName=mobilePhone.phoneName;
8     }
9     @Override
10     public void SendMessage() {
11         // TODO Auto-generated method stub
12         _mobilePhone.SendMessage();
13     }
14
15     @Override
16     public void Call() {
17         // TODO Auto-generated method stub
18         _mobilePhone.Call();
19     }
20
21 }

书写主函数Main来分别创建小米手机和苹果手机,并且分别加上蓝牙功能、GPS功能和视频通话功能。

1 public class Main {
2
3     public static void main(String[] args) {
4         // TODO Auto-generated method stub
5         MiPhone miPhone=new MiPhone();
6         iPhone iphone=new iPhone();
7
8         Bluetooth miBluetooth=new Bluetooth(miPhone);
9         miBluetooth.Connect();
10         GPS miGPS=new GPS(miPhone);
11         miGPS.Location="MiPhone的定位成功";
12         System.out.println(miGPS.Location);
13         Camera miCamera=new Camera(miPhone);
14         miCamera.VideoCall();
15
16         Bluetooth iBluetooth=new Bluetooth(iphone);
17         iBluetooth.Connect();
18         GPS iGPS=new GPS(iphone);
19         miGPS.Location="iPhone的定位成功";
20         System.out.println(miGPS.Location);
21         Camera iCamera=new Camera(iphone);
22         iCamera.VideoCall();
23     }
24
25 }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: