java - 为什么String类扩展了Object

标签 java string

查看 String 类声明,您可以看到它扩展了 Object 类。

public final class String
extends Object
implements Serializable, Comparable<String>, CharSequence

在实际上不需要的地方显式编写 extends Object 有什么意义?

这背后有什么合乎逻辑的原因吗?

最佳答案

官方的oracle JDK源代码中没有。您正在查看哪个版本?

public final class String
    implements java.io.Serializable, Comparable<String>, CharSequence

无论哪种方式,您是否在源代码中编写了 extends Object 都没有什么不同。但是请注意,如果您必须扩展另一个合法类而不是 Object,那么您将陷入死胡同,因为 Java 不支持多重继承。

更新

OP 正在查看 API 文档中的 String 声明。 Java 中的每个类都必须并且确实扩展了 Object。但是,源代码中是否写着extends Object就是另一回事了。

String 类在源代码中没有extends Object。但是,API 声明始终表明每个类都隐式扩展了 Object。

看看 source code .

关于java - 为什么String类扩展了Object,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18533207/

相关文章:

java - 确定 while 循环的迭代次数

java - Spring的DataBinder是如何用来转换普通参数值的?

c - 如何在 C 编程中传递二维字符串数组?

string - 将实体中的列表转换为数据库中的单个字符串列

java - 获取文件名区分大小写,拼写不区分大小写

java - 在 Eclipse 工作区中手动重命名项目

java - Vision API 不支持相机自动对焦

java - For Loop 保龄球得分

java - 如何过滤 Collection 以获得两个不同类型的 List

Mysql 删除字符串的第一个和最后一个部分 - 像函数一样爆炸?