策略设计模式

来源:互联网 发布:防范sql注入攻击的方法 编辑:程序博客网 时间:2024/06/11 00:28

/**
接口应用
*/

class InterfaceAppDemo
{
public static void main(String[] args)
{
Person p = new Person(“小白”);
System.out.println(“——–子宫前————–”);
p.setIsay(new Beforegong());
p.say();
System.out.println(“———子宫后———-“);
p.setIsay(new Aftergong());
p.say();
}
}
//把说话的行为抽象成一个借口
interface Isay
{
public void say();
}
class Beforegong implements Isay
{
public void say()
{
System.out.println(“人家是纯爷们”);
}
}
class Aftergong implements Isay
{
public void say()
{
System.out.println(“人家现在是宫女了”);
}
}
class Person
{//把可变化的行为抽象出来,定义成接口,并提供不同的实现

private String name;//把接口作为类中的一个属性(组合)private Isay isay;public Person(String name){    this.name = name;}public void setIsay(Isay isay){    this.isay = isay;}//这个方法的实现是变化的public void say(){    isay.say();}

}

0 0