首页 > 解决方案 > 将嵌套键表示为 java 中的类

问题描述

我有一个包含简单和嵌套键的文档。

简单的键如下所示:

cass SimpleKey {
   String name;
   String val;
}

像这样的嵌套键:

cass NestedKey {
   String name;
   List<NestedKey> val;
}

因此,一个简单键仅由nameand val、一个嵌套键name和任意数量的简单键或嵌套键组成。

我遇到的问题是我需要将嵌套键和简单键放入同一个列表中。

因此,我这样做了SimpleKey extends NestedKey,如果需要,我将NestedKey其转换为SimpleKey.

然而,这感觉真的很奇怪—— aSimpleKey没有扩展 a NestedKey。代表这一点的最佳方式是什么?

我查看了 Composite 模式,但我需要能够遍历NestedKey实例列表(和SimpleKey)并访问字段,如果我给它们一个公共接口或父类,这意味着我需要在每个是时候我想访问nameandval字段了,对吧?所以现在更多的铸造。

编辑

我需要转这个:

simplekey val
this.is.a.nested.key val

进入这个:

simple val
this
  is
   a
    nested
      key val (<-- looks like a simple key)

标签: java

解决方案


推荐阅读