我希望有一个可以列出TableObjects(自制类)的可观察列表。我将这个可观察列表发送到TableView对象。我的问题:有一个空的超级课有什么意义吗?
我将创建三个不同的表,显示三种不同类型的对象。我的计划是从TableObjects创建这些类型,这意味着我将创建扩展TableObject的子类。因此TableObjectA,B和C将具有String值,例如名称或类型。
我实际上可以放弃超级TableObject超类,但出于设计的具体原因,这不是我感兴趣的吗?我实际上对软件设计知之甚少,以及如何从我一直在学习的课程中设计一个对未来发展友好的软件。
答案 0 :(得分:4)
您只需描述Marker interface pattern,在您的情况下,它不应该是一个空的超类而是一个接口。
答案 1 :(得分:1)
如果您的超级班级代表了一种常见行为,您可以将其置于适当的位置。如果您希望所有类都包含任何特定行为,则可以使用接口。但是,如果你想拥有一个超级课程只是为了将几个孩子课程聚集在一起或出于任何原因,我建议遵守适当的课程命名约定,而不是超级课程。