为什么 hibernate 不强制您将字段标记为虚拟字段,但 nhibernate 强制您将字段标记为虚拟字段?
这是 VM 和 CLR 之间差异的结果吗?
最佳答案
这不是运行时之间的区别——这是语言之间的区别。
在 C# 中,默认情况下方法不是虚拟的。在 Java 中,它们是。
请注意,如您的问题所述,这两个平台都不允许字段是虚拟的。
Hibernate 和 NHibernate 都需要虚拟方法 - 这意味着在 C# 中使它们显式虚拟。
(请注意,在 Java 中,术语“虚方法”实际上并没有在语言规范中定义;在这里我用它来表示“非最终”:一种可以被覆盖的方法。)
关于java - 为什么 hibernate 不强制您将字段标记为虚拟字段,但 nhibernate 强制您将字段标记为虚拟字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2014399/