我最近调试了一个Xamarin Java绑定库,发现虽然Java.Lang.Object
类有一个ToString()
方法,但它实际上并没有覆盖object.ToString()
。相反,它的ToString()
方法只是隐藏了继承的方法。这意味着当我在VS调试器中查看覆盖toString()
的Java类时,显示的所有内容都是托管C#类型的名称。
为什么不Java.Lang.Object
覆盖object.ToString()
并将其转发到新的ToString()
方法? (同样适用于object.Equals()
和object.GetHashCode()
的问题。)