最近刷题的时候看到下面的代码
我开始认为既然是super.class()不应该是返回一个父类的class对象吗应该是test.Date啊?但是代码运行后返回的是test.SuperTest后来我又去查了关于super关键字的介绍,发现他不能代表一个super的实例化对象而是只能代表一个父类的定义,也就是只能来引用一些方法或成员变量,这里的super.getClass()只是调用了父类Object的方法getClass也就是说这种写法其实可以等同于this.getClass。
最近刷题的时候看到下面的代码
我开始认为既然是super.class()不应该是返回一个父类的class对象吗应该是test.Date啊?但是代码运行后返回的是test.SuperTest后来我又去查了关于super关键字的介绍,发现他不能代表一个super的实例化对象而是只能代表一个父类的定义,也就是只能来引用一些方法或成员变量,这里的super.getClass()只是调用了父类Object的方法getClass也就是说这种写法其实可以等同于this.getClass。