为了理解这个问题,您需要了解以下内容:
- 我想将一个名为 SCL 的类连接到一个名为 Region 的类。
- 现在我有很多不同的方式来连接这两个类的实例。
- 写这是Java
- 没有使用全局变量
所以我可以创建几个利用多态性的类(大约 9 个),但是每个类只有一个名为 connect(...) 的方法,其中包含许多不同的参数列表。我认为这被称为函子类。
例如一个类“SCLToRegionOverlapCircleConnect”将有一个连接方法,看起来像
public void connect(SCL scl, Region region, int radius, int overlapPercentage) {...}
而“RegionToRegionNonOverlapSquareConnect”类将有一个看起来像的连接方法
public void connect(Region bottomRegion, Region topRegion, int sideLength) {...}
或者
我可以只创建一个名为 ConnectionTypes 的类,并且只有 9 个不同的方法,每个方法都有不同的方法签名。
每个实现的优点和缺点是什么?谢谢!