this 代表什么?

yashiro 2002-11-01 07:11:55
import java.awt .*;
import java.applet .*;
import java.awt.event.* ;

public class FuXuan extends Applet implements ItemListener {
public void init()
{
Checkbox one=new Checkbox("猫");
Checkbox two= new Checkbox("狗",true);
Checkbox three=new Checkbox("兔",false);
one.addItemListener(this);
add(one);
two.addItemListener(this);
add(two);
three.addItemListener(this);
add(three);
}
public void itemStateChanged(ItemEvent e)
{
}
}
//<applet code=FuXuan.class width=300 height=200></applet>

这个this 代表什么?
...全文
43 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhurui214 2002-11-04
  • 打赏
  • 举报
回复
同意ervinlj的观点,this就是指引用本身的对象
第一个程序是对的,三个this分别引用了对象本身的接口,即监听器
第二个程序是错的,当该类实例化的时候会在实例化一个属于自己类的对象,如此反复,层出不穷,就象以前常遇到的死循环一样。
不过,类本身实例化自己的例子不是没有,不过那是在这个类为主类含有main()函数的时候,在main()函数里实例化自己的对象。
kuailexq2000 2002-11-04
  • 打赏
  • 举报
回复
this.是个类。jbuild形象为窗体!
双杯献酒 2002-11-04
  • 打赏
  • 举报
回复
引用自己的东西,不需要this.
this一般在当要把自身的做为另外函数的参数的时候使用。
sunnyby 2002-11-04
  • 打赏
  • 举报
回复
还有,引用自己的东西,应该不用表明this.的。
写上的话,也许比较清晰吧。
sunnyby 2002-11-04
  • 打赏
  • 举报
回复
/*
* 报错无穷,我感觉是无限循环调用了FuXuan 类的构造函数。
*/
ervinlj 2002-11-03
  • 打赏
  • 举报
回复
很简单,你可以在FuXuan类内实例化自己吗?这是天大的笑话,在一个类内如果想引用自己,除了this,还会有什么啊?
yashiro 2002-11-01
  • 打赏
  • 举报
回复
这么说只要实现了ItemListener接口的类都要把自己的对象当addItemListener方法的对象了?
为什么我上面的例子用类的实例替换this会有无数的报错呢?
ervinlj 2002-11-01
  • 打赏
  • 举报
回复
addItemListener方法中的参数是一个事件对象,而你是在你自身的类中实现了ItemListener这个接口,也就是说你将这个自身的类作为监听器对象。就要用这个this参数来引用这个事件对象。
whatawalter 2002-11-01
  • 打赏
  • 举报
回复
实例化后的class FuXuan,也就是指向对象的reference,不过要upcast到ItemListener。
yashiro 2002-11-01
  • 打赏
  • 举报
回复
没用过。为什么
import java.awt .*;
import java.applet .*;
import java.awt.event.* ;

public class FuXuan extends Applet implements ItemListener {
FuXuan fx=new FuXuan();
public void init()
{
Checkbox one=new Checkbox("猫");
Checkbox two= new Checkbox("狗",true);
Checkbox three=new Checkbox("兔",false);
one.addItemListener(fx);
add(one);
two.addItemListener(fx);
add(two);
three.addItemListener(fx);
add(three);
}
public void itemStateChanged(ItemEvent e)
{
}
}
会报错无穷?
signboy 2002-11-01
  • 打赏
  • 举报
回复
FuXuan的当前实例
popyoung 2002-11-01
  • 打赏
  • 举报
回复
你用过JBuilder么,里面很形象的。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧