最佳答案
我有个朋友。NET 开发之后,在 Java 中开发了很多年,在看了他的一些代码之后,我注意到他经常做以下事情:
IDictionary<string, MyClass> dictionary = new Dictionary<string, MyClass>();
他将 dictionary 声明为 Interface 而不是 Class:
Dictionary<string, MyClass> dictionary = new Dictionary<string, MyClass>();
我只在需要时使用 IDictionary 接口(例如,将 dictionary 传递给接受 IDictionary 接口的方法)。
我的问题是: 他的做事方式有什么优点吗? 这在 Java 中是一种常见的做法吗?