如何在 Java 中表示多级层次结构

How to represent a multilevel hierarchy in Java

我正在尝试制作一个 Android 应用程序,您可以在其中买卖物品。我 运行 撞墙了:我被困在如何表示类别和子类别上。任何类别都可以有一定数量的子类别,这些子类别还可以有子类别,其中包含字段等。

例如,假设您想出售一对手表,类别和子类别可能是:

-Jewelry
--Men
---Watches
----Rolex

甚至可能是

-Jewelry
--Men
---Watches
----Rolex
-----Models
------SubMarine

您将如何用 class 层次结构来表示它?我似乎无法找到不会以大量 classes 和难以更新的东西结束的解决方案。

我正在考虑使用 Jackson/Gson、Mysql/MSSQL 进行存储,并且很可能使用休息服务来保存它;可以与这些技术集成的答案加分。

继承是一种幼稚的方法。每个类别和子类别的子 class 无法扩展。

子类别呢?天啊。

也许更好的方法是坚持 Category class 并使其成为 Composite,或者只创建一个 Category 实例树。这样您就可以 assemble 通过添加实例和数据而不是新的 class 类别树来满足您的需求。