`

黑马程序员----组合设计模式

 
阅读更多
组合设计模式

---------------------- android培训java培训、期待与您交流! ----------------------

1.什么时候用组合设计模式
如果在设计一个类的时候, 需要另外一个类的方法时, 就可以使用组合设计模式
2.组合设计模式的写法
在当前类中定义一个被组合类的引用
通过构造函数组合
在需要使用被组合类的方法时, 通过成员变量调用
3.组合设计模式的优点
使用继承也可以访问其他类的方法, 但是会占用Java中唯一的一个继承位置, 组合则不用
使用组合设计模式构造函数中的形参可以定义为一个父类类型, 所有子类对象都可以传入, 让程序变得更为灵活
对应代码:
class CompositePattern
{
	public static void main(String[] args) 
	{
		Person p = new Person(new Card());
		p.eat();
	}
}

class Person
{ 
	private Card card;
	Person(Card card)
	{
		this.card = card;
	}
	void eat()
	{
		//Card card = new Card();
		//card.shuaka();
		card.shuaKa(); 
		System.out.println("吃饭");
	}


}

class Card
{
	void shuaKa()
	{
		System.out.println("刷卡");
	}
}

class XiongYong extends Card
{
	void shuaKa()
	{
		System.out.println("先刷卡");
	}

}


---------------------- android培训java培训、期待与您交流! ---------------------- 详细请查看:http://edu.csdn.net/heima
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics