![]() |
1
1
必须将字段添加到Product类,ProductFamily类的对象。通过在产品类中添加方法getProductFamily(),可以返回特定产品的产品系列。 |
![]() |
2
0
在Java中只能扩展一个类。你可以在很多课上这样做。如果您想用相同的函数名扩展多个类,我将使用接口。 |
![]() |
3
0
可能是这样,假设
|
![]() |
4
0
如果您来自关系数据库领域,那么您可能已经牢牢掌握了几个相关的概念,包括关系连接、数据规范化、逻辑数据独立性、自描述数据、ACID事务和并发控制。对于初学者来说,要真正掌握每一个概念的力量和简单性是很困难的,因为他们对所有概念都不太熟悉。信不信由你,对象建模专家发现,仅仅通过将这些概念与他们已经知道的东西进行比较,就不容易掌握其中的每一个概念。 当您第一次开始学习对象建模时,也会发生类似的事情。三个相互关联的概念是继承、封装和多态性。如果没有对另外两个的把握,这些都没有多大意义。他们共同努力,建立一个既强大又简单的系统。 抵制将对象模型视为关系模型的诱惑,只不过没有一些特性。这是对对象模型的过度简化。事实上,每一种造型模式都是造型艺术的巨大进步,大约在四五十年前。它们中的每一个都让人们更容易思考现有的系统或提出的系统,但还没有建立起来。 但他们彼此不一样 两个都不是从另一个派生出来的。
在关系建模中,与超类/子类最接近的类比不是在关系模型中,而是在扩展实体关系模型中。这里有一个概念叫做泛化/专门化。猫、狗、鸟或蛇是普通宠物的特长。这是一种IS-A关系。如果泛化/专门化对您来说在当前的情况下是有意义的,那么子类和继承将为您提供很好的服务。如果没有,那么最好不要尝试在这里使用子类。 Schedule Join Multiple Tables . 对于那些人,有一个标签 class-table-inheritance 您需要决定Product和ProductFamily是否是继承有用的情况。同样,如果它是一个HAS-a关系,忘记子类和继承。如果这是一个IS-A关系,那么继承是一个简单解决方案的关键。为了在超类上执行有意义的操作,您要么必须将自己限制在对超类有意义的操作上,要么必须学习如何构建多态操作。这是一个很大的学习,但有很多价值的道路尽头。 |
|
user29759326 · 如何返回递归函数中的最后一个值? 3 月前 |
|
malife89 · 将java中的字符串读取为正确的日期格式 3 月前 |
![]() |
Tim · 在java中,有没有更快的方法将字节数组写入文件? 3 月前 |
![]() |
rudraraj · java中未声明最终变量 4 月前 |
![]() |
Bala Ji · 以下BFS的实施效率如何? 4 月前 |