我是这么理解的。。。。
this 指的是 当前对象,相当于一个全局变量(方法体之外声明的变量),
而这个全局变量是没有实例化的;
static 方法中,使用的全局变量必须是静态的。所以不能使用没有实例化
的当前对象this。
super有两个用法:
1、放在子类构造方法首行,是调用父类的构造方法。
2、在子类的方法中可以通过super.来调用父类允许调用的方法。
你把super放在外面,是不允许的。
下面是网上的解释
在Java中含有static的事静态方法,而this指的是当前对象,是个动态的
这跟创建对象加载代码的顺序有关。this指的是当前对象,而static方法加载的时候这个对象还没有创建完全。当然不存在this(当前对象)
在静态方法中不能用this引用动态内容,需要重新new一个对象才可以。
this 指的是 当前对象,相当于一个全局变量(方法体之外声明的变量),
而这个全局变量是没有实例化的;
static 方法中,使用的全局变量必须是静态的。所以不能使用没有实例化
的当前对象this。
super有两个用法:
1、放在子类构造方法首行,是调用父类的构造方法。
2、在子类的方法中可以通过super.来调用父类允许调用的方法。
你把super放在外面,是不允许的。
下面是网上的解释
在Java中含有static的事静态方法,而this指的是当前对象,是个动态的
这跟创建对象加载代码的顺序有关。this指的是当前对象,而static方法加载的时候这个对象还没有创建完全。当然不存在this(当前对象)
在静态方法中不能用this引用动态内容,需要重新new一个对象才可以。