java - 方法可以返回抽象类类型吗?

标签 java return-type

我正在查看 NumberFormat 类中的方法 getCurrencyInstance(),我看到该方法的返回类型为 NumberFormat

这是什么意思?

我有点困惑,因为我知道我们可以创建一个抽象类的对象。所以这个方法返回一个对象,如果这个方法不返回一个对象,它返回什么?

最佳答案

在 Java 中,方法可以返回抽象类或接口(interface)类型。实际返回的是一个实现该接口(interface)或扩展该抽象类的对象。

静态方法 NumberFormat.getCurrencyInstance() 将返回一个扩展 NumberFormat 的具体对象。在javadoc你可以看到有两个直接已知的子类:ChoiceFormat 和 DecimalFormat。可能有更多实现,实际返回的内容取决于您使用的 JVM 的实现。

关于java - 方法可以返回抽象类类型吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32936777/

相关文章:

java - 如何使用 Wicket 正确建模子面板?

java - 如何区分子类?

java - Gradle eclipse 任务没有添加适当的 gradle 性质

java - Java Servlet API 是否向后兼容?

javascript - 即使参数的类型错误,TypeScript 也不会出错

c++ - 返回不同类型变量的单个 get 方法

c++ - 按值返回对象和按引用返回对象的区别,对象构造

c# - C dll向C#返回多个变量

java - 在一个语句中从两个表中删除

java - 为什么MySQL在调用过程时会抛出错误