社区
Java SE
帖子详情
小问题:为什么在static方法里不能使用this和super指针?
rainworm
2004-05-08 11:45:15
举个简单的例子,比如我class test1 extends test2
test1和test2里都有个xxx()的方法
如果我在test1里的main方法里使用super.xxx()那么就会出错
提示错误:super不能放在static context里
为什么会出现这个错误
请指点一二!立即结帐!
...全文
261
10
打赏
收藏
小问题:为什么在static方法里不能使用this和super指针?
举个简单的例子,比如我class test1 extends test2 test1和test2里都有个xxx()的方法 如果我在test1里的main方法里使用super.xxx()那么就会出错 提示错误:super不能放在static context里 为什么会出现这个错误 请指点一二!立即结帐!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
firefoxes
2004-05-08
打赏
举报
回复
同意
hooligan31000
2004-05-08
打赏
举报
回复
同意
myhotsun
2004-05-08
打赏
举报
回复
static方法不需要通过对象实例调用!再使用这个方法时并没有类的实例对象!当然也就无法使用this指针了!this表示当外对象实例的引用,既然没有这个实例对象当然也就无法使用了!就像在static方法中无法引用类的非静态成员变量一样!都是因为调用这个方法时可能并不存在任何一个类的实例对象!
maowu
2004-05-08
打赏
举报
回复
还没有轮到讨论this,super的问题啊,static方法里面不能调用不是static的xxx()方法啊.
如果你的xxx()是静态的,那就不用super了,B.xxx()就ok啦.
boyiam
2004-05-08
打赏
举报
回复
回复人: huwenbo518(huwenbo) ( ) 信誉:100 2004-05-08 13:30:00 得分:0
哥们,static成员不属于任何一个实例,是静态的,与生俱来,一个类有且只有一个,所以不能用this。
---------------------------------??????
iwhp
2004-05-08
打赏
举报
回复
仔细看一下定义吧。
huwenbo518
2004-05-08
打赏
举报
回复
哥们,static成员不属于任何一个实例,是静态的,与生俱来,一个类有且只有一个,所以不能用this。
whbxm2000
2004-05-08
打赏
举报
回复
static方法不需要通过对象实例调用!调用这个方法时可能并不存在任何一个类的实例对象!
explorman
2004-05-08
打赏
举报
回复
就像在static方法中无法引用类的非静态成员变量!
umbrella1984
2004-05-08
打赏
举报
回复
就像在static方法中无法引用类的非静态成员变量一样!都是因为调用这个方法时可能并不存在任何一个类的实例对象!
为什么在
static
方法
中
不能
有this,也
不能
有
super
super
表示父类的当前实例,
static
是属于类的,this是类的一个对象,当然调用了不了他,
static
太牛了,只有类名可以调用它,
static
叫静态
方法
,也叫类
方法
,就是在程序启动的时候,就会为这个
方法
分配一块内存空间,...
Java中为什么在
static
中
不能
使用
this关键字?
Static
方法
是类
方法
,先于任何的实例(对象)...而且,更为重要的是this和
super
都无法出现在
static
修饰的
方法
中,
static
修饰的
方法
是属于类的,该
方法
的调用者可能是一个类,而不是对象.如果
使用
的是类来调用而不是对象.
Java 中为什么
static
方法
中
不能
使用
this关键字
在我
使用
static
时,括号内
使用
了this. ,就出现了爆红如图:根据警告的提示,我将警告部分改成了下面这样,
问题
就好了:为什么会这样呢?首先,
static
叫静态
方法
,也叫类
方法
,它先于任何的对象出现。在程序最开始启动...
为什么this
super
不能
用在
static
方法
中??
为什么this
super
不能
用在
static
方法
中??2016年07月28日 20:54:29阅读数:2499[java] view plain copyclass Fu { int a; } class Zi extends Fu { int b;
static
void test(){ this.b;
super
.a...
Java
static
方法
里
为什么
不能
使用
this关键字,和
Super
Static
方法
是类
方法
,先于任何的实例(对象)存在...即在程序启动的时候,就会为
static
方法
分配一块内存空间,没有
static
的其他
方法
,非静态
方法
,必须在类实例化时,才有内存空间,所以在类实例化之前是无法调用的...
Java SE
62,614
社区成员
307,307
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章