谈谈Java中this的使用

谈谈Java中this的使用

ID:38374922

大小:27.00 KB

页数:3页

时间:2019-06-11

谈谈Java中this的使用_第1页
谈谈Java中this的使用_第2页
谈谈Java中this的使用_第3页
资源描述:

《谈谈Java中this的使用》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、1.this是指当前对象自己。当在一个类中要明确指出使用对象自己的的变量或函数时就应该加上this引用。如下面这个例子中:publicclassA{Strings="Hello";publicA(Strings){System.out.println("s="+s);System.out.println("1->this.s="+this.s);this.s=s;System.out.println("2->this.s="+this.s);}publicstaticvoidmain(String[]ar

2、gs){newA("HelloWorld!");}}运行结果:s=HelloWorld!1->this.s=Hello2->this.s=HelloWorld!在这个例子中,构造函数A中,参数s与类A的变量s同名,这时假如直接对s进行操作则是对参数s进行操作。若要对类A的变量s进行操作就应该用this进行引用。运行结果的第一行就是直接对参数s进行打印结果;后面两行分别是对对象A的变量s进行操作前后的打印结果。2.把this作为参数传递当你要把自己作为参数传递给别的对象时,也可以用this。如:public

3、classA{publicA(){newB(this).print();}publicvoidprint(){System.out.println("HellofromA!");}}publicclassB{Aa;publicB(Aa){this.a=a;}publicvoidprint(){a.print();System.out.println("HellofromB!");}}运行结果:HellofromA!HellofromB!在这个例子中,对象A的构造函数中,用newB(this)把对象A自己作

4、为参数传递给了对象B的构造函数。3.注重匿名类和内部类中的中的this。有时候,我们会用到一些内部类和匿名类。当在匿名类中用this时,这个this则指的是匿名类或内部类本身。这时假如我们要使用外部类的方法和变量的话,则应该加上外部类的类名。如下面这个例子:publicclassA{inti=1;publicA(){Threadthread=newThread(){publicvoidrun(){for(;;){A.this.run();try{sleep(1000);}catch(Interrupted

5、Exceptionie){}}}};thread.start();}publicvoidrun(){System.out.println("i="+i);i++;}publicstaticvoidmain(String[]args)throwsException{newA();}}在上面这个例子中,thread是一个匿名类对象,在它的定义中,它的run函数里用到了外部类的run函数。这时由于函数同名,直接调用就不行了。这时有两种办法,一种就是把外部的run函数换一个名字,但这种办法对于一个开发到中途的应用

6、来说是不可取的。那么就可以用这个例子中的办法用外部类的类名加上this引用来说明要调用的是外部类的方法run。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。