这里有一个概念上的困难 - 从书中阅读和学习Java。
它提到了以下内容(在解释几个不同主题的过程中) -
Java在类层次结构中不支持多重继承。因此,如果类C是类A的子类,则它不能同时是类B的子类(我知道接口在这里有解决方案)
java.lang.Object
是所有类(系统和用户)“扩展”的原始类。因此,每个类都是类java.lang.Object
的直接或间接子类Java中的类不仅是编译器工件 - 在运行时,它们由类
java.lang.Class
的实例表示
难道#3的意思是语言本身定义的类是java.lang.Class
类型的 - 而#2的意思是它们也是java.lang.Object
类型的 - 与#1相矛盾?哪个类是Java类的父类?
如果#1仍然有效,我猜想这意味着#3只是说类的“运行时表示”是类java.lang.Class
的实例 - 它是java.lang.Object
的子类?但是类本身是java.lang.Object
的子类吗?
感谢您的指导!提前致谢!
Class
类的一个实例,而Class
类像所有类一样,是Object
的子类。例如,String
的一个实例不是Class
的实例,也不是Class
的子类。只是String
类本身是Class
的一个实例(而不是String
的实例)。 - Hot LicksClass
类本身就是Class
的一个实例,而且,Object
类也是Class
的一个实例。 - Hot LicksClass<Class> clazz = Class.class
可以运行。现在我真的很困惑。 - Unihedron