策略设计模式
2016-07-17 15:46
387 查看
/**
接口应用
*/
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
{//把可变化的行为抽象出来,定义成接口,并提供不同的实现
}
接口应用
*/
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(); }
}
相关文章推荐
- java设计模式-克隆模式(复制模式)
- Android消息机制
- 关于域名和IP描述正确的是?
- RAC 数据库 gc 类性能问题分析
- for DEMO
- 【HDU4552】 怪盗基德的挑战书(后缀数组)
- Python2.6升级到2.7
- 函数指针的使用
- JavaScript-DOM
- 线程池介绍
- Spark会把数据都载入到内存么
- 解决ScrollView.setOnScrollChangeListener() API23问题;
- maven eclipse环境搭建
- 静态代理设计模式
- 高速公路(Highway,ACM/ICPC SEERC 2005,UVa1615)
- postman应用
- IOS Dev Intro - vImage scale
- leetcode 197. Rising Temperature
- 编译时的注解编写
- scala技术文章集锦