Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Design patterns 通过单个对象管理多个类_Design Patterns - Fatal编程技术网

Design patterns 通过单个对象管理多个类

Design patterns 通过单个对象管理多个类,design-patterns,Design Patterns,我不知道这是否是正确的方法,或者我是否让它变得过于复杂,但我有一个接口,它由许多其他类实现,一个类创建这些对象,这些对象有这个接口并传递它。其思想是,只需创建一个实现该接口的类,而无需更改其他代码,就可以轻松地添加新特性。想法 例如JTabbedPane和窗格(选项卡)。在一个包中,您可以拥有所有这些类,它们实现了一个名为Tab的接口。在运行时,带有JTabbedPane的类调用另一个名为Tabs的类对象(或util),Tabs读取包含Tab类型类的包中的所有类。选项卡创建对象,然后传递。这样,

我不知道这是否是正确的方法,或者我是否让它变得过于复杂,但我有一个接口,它由许多其他类实现,一个类创建这些对象,这些对象有这个接口并传递它。其思想是,只需创建一个实现该接口的类,而无需更改其他代码,就可以轻松地添加新特性。想法


例如JTabbedPane和窗格(选项卡)。在一个包中,您可以拥有所有这些类,它们实现了一个名为Tab的接口。在运行时,带有JTabbedPane的类调用另一个名为Tabs的类对象(或util),Tabs读取包含Tab类型类的包中的所有类。选项卡创建对象,然后传递。这样,当您添加新功能(如新选项卡)时,就不需要编辑代码。

这听起来像是标准继承,但我不确定我是否理解您的问题。添加新功能是什么意思?您能给出一个示例用例吗?功能只是将新部件添加到您的程序中。