我有一些对象(MyObject类)。每个对象由三个名为type
,instance
,name
的字符串标识。这些字符串我将调用description
。
我想创建一种机制来根据description
或完整description
的部分来获取正确的对象。
如果我有以下对象:
Object 1. has type:myType; instance:myInstance; name:myName;
Object 2. has type:myType; instance:myInstance2; name:myName2;
Object 3. has type:myType2; instance:myInstance3; name:myName3;
Object 4. has type:myType2; instance:myInstance3; name:myName4;
我想要那个
get("myType") returns objects 1. and 2.
get("myType").get("myInstance") returns object 1.
get("myType2").get("myInstance3") returns objects 3. and 4.
get("myType2").get("myInstance3").get("myName4") returns object 4.
我的同事向我解释了如何实现这一点,但我不明白:| 他勾画了下面的图表
此图中的位置是MyObject
的位置? MyObject
汇总A
,B
,C
或反之亦然?
答案 0 :(得分:0)
你的同事的图表只是这个电话的一个例子:
get("myType2").get("myInstance3").get("myName4") returns object 4.
如果我们改写它,那么它看起来像......
A = get("myType2");
B = A.get("myInstance3");
C = B.get("myName4");
但无论A / B / C是什么,它的类都需要能够容纳多个项目,所以听起来你需要一个MyObjectCollection<> class,并为它实现get()(返回MyObjectCollection<>)。
MyObjectCollection<MyObject> A = get("myType2");
MyObjectCollection<MyObject> B = A.get("myInstance3")
MyObjectCollection<MyObject> C = B.get("myName4")
然后C将包含MyObject 4.