基本上我正在尝试实现类似这样的东西,其中伙伴节点是“type1”,客户端节点是“type2”,用户节点是“type3”。并且每个节点可以具有多个子节点。因此,Partner1可以拥有任意数量的客户端节点,类似地,客户端节点可以拥有任意数量的用户。
我已经开始实施,但我现在卡住了。我写的代码如下。
SHA256Managed
如果需要一些见解,请告诉我
答案 0 :(得分:1)
首先是一些非特定的事情:
您想了解数据封装。将所有公共字段放在您的类上是完全错误的。您实际上希望尽可能隐藏此类信息。
然后你想了解 java编码风格约定;因为你违反了其中的一些(当你向更有经验的java程序员展示代码时,这根本没有用。)
最后,最重要的是:你想要阅读一些关于 OO设计的一般信息(我推荐Robert Martin的“敏捷实践”;有一个免费的PDF版“C#版”那本书):
首先是
a)作为客户/用户是一种“不同的责任”,而不是
b)作为图表中的某个元素
换句话说:你在课堂上放了太多“角色”。
含义:你想介绍各种抽象。例如:
interface GraphNode<N, C extends GraphNode> {
N getNodeContent();
List<C> getChildrenNodes();
}
现在您可以表达:任何“节点”都有一些内容(可以是用户或客户端或任何对象);它有一个子列表(或集合),也是“节点”。
答案 1 :(得分:0)
我在这里为您提供高级设计,您必须根据您的要求提供getNext()和getChildren()的实现。 我希望它可以帮助你,让我知道如果你有任何其他想法。
mat(imdilate(mat==2,strel('disk',2)))=2;
注意:它是一种高级设计。使用此设计,如果将来需要,您可以在应用程序中引入更多类型。