![]()
public interface Phone
{
public void ring();
}
public final class SimplePhone implements Phone
{
public SimplePhone()
{
System.out.println("一部SimplePhone");
}
@Override
public void ring()
{
System.out.println("声音提醒");
}
}
public class JarPhone extends PhoneDecorator
{
public JarPhone(Phone phone)
{
super(phone);
System.out.println("一部JarPhone");
}
public void shake()
{
System.out.println("震动提醒");
}
}
public class ComplexPhone extends PhoneDecorator
{
public ComplexPhone(Phone phone)
{
super(phone);
System.out.println("一部ComplexPhone");
}
public void shake()
{
System.out.println("震动提醒");
}
public void shine()
{
System.out.println("闪烁提醒");
}
}
public class PhoneDecorator implements Phone
{
private Phone phone;
public PhoneDecorator(Phone phone)
{
this.phone = phone;
}
@Override
public void ring()
{
phone.ring();
}
}
public class Main
{
public static void main(String[] args)
{
Phone phone;
phone = new SimplePhone();
phone.ring();
System.out.println("-------------");
JarPhone jarPhone = new JarPhone(phone);
jarPhone.ring();
jarPhone.shake();
System.out.println("-------------");
ComplexPhone complexPhone = new ComplexPhone(phone);
complexPhone.ring();
complexPhone.shake();
complexPhone.shine();
}
}、
posted @
2024-12-07 09:21
kuku睡
阅读(
6)
评论()
收藏
举报