Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.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
Louse耦合和java按钮_Java_Loose Coupling - Fatal编程技术网

Louse耦合和java按钮

Louse耦合和java按钮,java,loose-coupling,Java,Loose Coupling,我正在读一本书,书中给出了一个关于松耦合的示例: 以JavasButtons为例,在这里获取并分配一个按钮 侦听器不必更改现有类型的按钮 现有button类中的任何内容 我不确定我是否理解作者的意思。这是一个松耦合的例子吗?该耦合是松耦合的,因为该按钮对特定的ButtonListener实现一无所知。相反,ButtonListener对按钮不太了解。ButtonListener接口只为您提供一个事件,封装了您需要知道的有关更改内容的信息。您的实现对该事件源的类型的了解有限。因此,您的侦听器和按钮

我正在读一本书,书中给出了一个关于松耦合的示例:

以JavasButtons为例,在这里获取并分配一个按钮 侦听器不必更改现有类型的按钮 现有button类中的任何内容


我不确定我是否理解作者的意思。这是一个松耦合的例子吗?

该耦合是松耦合的,因为该按钮对特定的ButtonListener实现一无所知。相反,ButtonListener对按钮不太了解。ButtonListener接口只为您提供一个事件,封装了您需要知道的有关更改内容的信息。您的实现对该事件源的类型的了解有限。因此,您的侦听器和按钮从不使用它们的类级API元素直接相互通信,它们只根据它们实现的接口(ButtonListener和Event)相互通信。广义上讲,当两个类通过共享抽象API相互通信时,它们被描述为松散耦合的,这意味着它们都不依赖于另一个类的特定于实现的细节,因此它们的内部可以独立地更改。

耦合是松散的,因为按钮不知道有关特定应用程序的任何信息ButtonListener实现。相反,ButtonListener对按钮不太了解。ButtonListener接口只为您提供一个事件,封装了您需要知道的有关更改内容的信息。您的实现对该事件源的类型的了解有限。因此,您的侦听器和按钮从不使用它们的类级API元素直接相互通信,它们只根据它们实现的接口(ButtonListener和Event)相互通信。广义地说,当两个类通过共享抽象API相互通信时,它们被描述为松散耦合的——这意味着它们都不依赖于另一个类的特定于实现的细节,因此它们的内部可以独立地更改