jsm*_*ith 2 .net c# inheritance hierarchy
所以我刚接受了面试,他们给了我一份他们希望我事先处理的任务清单.我完成了除了一个以外的所有任务,并且想知道是否有人能够对这个问题有所了解.
问题就是这样的
我完成了任务1-3,但是在问题4上被困了.我在过去的继承工作经历中并没有做太多的事情,这个问题对我来说似乎有点模糊.我向雇主解释了这一点,他们看起来还不错,但没有告诉我应该怎么做.它现在一直困扰着我,我想知道它是如何完成的.
听起来好像他们打算在本练习中证明你理解简单继承的局限性.在最简单的继承模型中,你无法用继承者所代表的年龄和性别模拟人类.考虑以下:
Abstract Class Human通过两个遗传Child和Adult;Abstract Class Human继承者Male和Female很明显,在这个模型中,人类不能同时兼顾Child和Female/或任何其他组合.因此答案是这个简单的模型是不充分的,相反,您应该建议在尽可能使用已建立的模型的同时满足要求的替代实现.
我将重复我经常说的话:
物体不应该试图代表现实.一个好的对象模型只需要解决手头的问题.
我的意思是,应该以解决手头问题的最恰当的方式建立Child/Adult和Male/Female排他性关系.这不要紧,如果他们不能代表现实的.在你的位置上,我会尝试提出各种适合不同问题的替代方案,并解释为什么每种方案在这种情况下都是有益的.
| 归档时间: |
|
| 查看次数: |
311 次 |
| 最近记录: |