【发布时间】:2020-11-17 19:00:29
【问题描述】:
我有一个类Transaction,其子类Income 和Expense 有一个属性category。收入和支出有不同的类别,即IncomeCategory 和ExpenseCategory。我需要一份收入和支出的清单,所以我创建了一个交易清单。但我还需要访问他们的类别,所以Transaction 也需要一个类别属性。由于类别可以采用的值是有限的,因此枚举或密封类将非常实用。但我需要一些超类型与子类型可互换的东西。
有没有办法指定一个通用类别,以便 Transaction 类可以接受IncomeCategory 或ExpenseCategory 作为参数?
P.S.:抱歉标题太糟糕了,我想不出更好的方式来描述我的问题
【问题讨论】:
-
您可以让incomecategory 和expensecategory 扩展一个共享类型的类别
-
@dazza5000 如何用常规类(如枚举)表示一组有限的值
-
貌似@TenFour04有货了:)
-
Transaction的每一种 类型都有类别吗?
标签: kotlin inheritance enums sealed-class