首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >案例类继承

案例类继承
EN

Stack Overflow用户
提问于 2014-08-08 19:00:08
回答 1查看 132关注 0票数 2

我有一个类层次结构,我更希望有三个层次的案例类:我只是外围意识到案例类不允许继承;但我闻到了这一种咖啡的味道。

所以,我现在有:

代码语言:javascript
复制
"Grandparent" : Abstract class that extends Product
"Kids":  Case Classes  (concrete  - these are instantiated within the framework)
"Grandkids"  Case classes  (not allowed)

现在,框架周围有很多样板,需要不同方面的案例类:所以我不愿意去把"Kid“转换成一个非Case类。在这种情况下,我至少需要实现(为了框架的目的):

  • 产品接口方法
  • copy()方法
  • 至少具有apply/unapply的伴生对象。

我对实现这些代码的关注是:它将导致更多的代码,这些代码必须由我的评审人员进行分析并在以后进行维护。

对于如何减轻Case类的非继承限制的代码膨胀影响,有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-09 22:37:36

按照几个注释的思路,特别是@naemul:我已经将“子”级别(三层结构的中间层)转换为(抽象类/具体类)的组合。

代码语言:javascript
复制
                        GrandParent (abstract class)
                             |
                       Abstract Kids
                       /          \
Concrete Kids (case classes)       \
                                  Concrete Grandkids (case classes)           
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25210499

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档