黑马软件工程师-组合设计模式
黑马程序员----组合设计模式
1.什么时候用组合设计模式
如果在设计一个类的时候, 需要另外一个类的方法时, 就可以使用组合设计模式
2.组合设计模式的写法
在当前类中定义一个被组合类的引用
通过构造函数组合
在需要使用被组合类的方法时, 通过成员变量调用
3.组合设计模式的优点
使用继承也可以访问其他类的方法, 但是会占用Java中唯一的一个继承位置, 组合则不用
使用组合设计模式构造函数中的形参可以定义为一个父类类型, 所有子类对象都可以传入, 让程序变得更为灵活
对应代码:
组合设计模式
---------------------- 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.****.net/heima