为什么在Java中
我查看了JDK的源代码,但是并不确定自己能否找到答案。现在,我知道JDK使用树来存储类之间的关系,并使用深度来指示其级别,
那么,我能否说
Object[].class.isAssignableFrom(String[].class) == true
,而 String[].getSuperClass()
或者 getGenericInterfaces()
却不能获取 Object[]
?我查看了JDK的源代码,但是并不确定自己能否找到答案。现在,我知道JDK使用树来存储类之间的关系,并使用深度来指示其级别,
Class::isAssignableFrom()
搜索该链,所以数组肯定在这个树里面。同时,也可以看出 String[]
与 Object[]
相连。那么,我能否说
String[]
是 Object[]
的子类呢?
或者这只是Java的另一个奇怪的事情?