【发布时间】:2016-02-28 14:03:34
【问题描述】:
我正在尝试创建具有不同用户的聊天应用程序:简单用户、vip 用户等等。
所有类型的用户都将拥有简单用户拥有的数据,例如:姓名、密码、电子邮件等,但所有其他用户类型只有他们的唯一选项。
我想创建一个 SimpleUser 类,该类将具有通过使用私有变量、getter/setter 等实现的基本功能,而所有其他用户类型将具有自己的类,这些类扩展 SimpleUser 类并添加其独特的功能.
但是在我看到这篇文章之后 Do subclasses inherit private fields? 这似乎不是正确的方法。
我不确定使用接口提供可选功能是否会有所帮助,因为我在使用 getter/setter 访问的每个用户类型中仍然有私有变量。
目前我也在每个屏幕上检查用户的类型(以便为他选择正确的选项),它看起来很笨重,有没有办法只检查一次用户的类型(当用户登录)并在所有屏幕中简单地使用他的独特功能?
设计课程的正确方法是什么?
他们的一个解决方案是我的两个问题吗?
【问题讨论】:
-
简单用户和VIP用户会有哪些不同的行为?专注于建模行为,而不是数据。
标签: java android oop design-patterns