当前位置:编程学习 > JAVA >>

求大神帮帮忙。this 的问题.....................

class Student
{
 Tercher T;
public Student(Tercher T)
 {
  this.T=T;
 }
}
class Tercher
{
 Student stu;
 public void GetStudentToTercher()
 {
    stu=new Student(this);
 }
} --------------------编程问答-------------------- 你想问什么呀? --------------------编程问答-------------------- this 的作用:
1> 避免命名冲突。
像你写的 Student 类,里面声明了一个成员变量 Tercher T,它的构造方法 public Student(Tercher T) 中也有一个 Tercher T,this.T = T,这里的 this.T 代表的是当前对象的 T 成员变量,等号后面的 T 代表的是传过来的对象参数,这样就避免了命名冲突一起的问题。如果写成了 T = T,这里的两个 T 指的都是参数中的 T,因为参数名和成员变量名相同,那么在这个方法里面,成员变量是会被屏蔽的。
2> 表示当前对象,即正在运行中的对象。
就像你写的 Tercher 类,public void GetStudentToTercher() { stu=new Student(this); },在调 GetStudentToTercher 之前,你肯定需要先 new 一个 Tercher 类的对象,然后再调 GetStudentToTercher 这个方法,stu=new Student(this); 这里的 this,就是你所 new 出来的 Tercher 类的对象。 --------------------编程问答-------------------- 问题是啥呢??? --------------------编程问答-------------------- 你要干什么   你要 --------------------编程问答-------------------- 你的问题呢? --------------------编程问答--------------------

问题自己找。找到问题再给个答案就行。
看楼下的了。 --------------------编程问答-------------------- 楼主程序没有报错,我也很好奇楼主想问什么?this的语法? --------------------编程问答-------------------- this 就是·自己·· --------------------编程问答-------------------- this表示当前调用的对象 --------------------编程问答-------------------- Java关键字this只能用于方法方法体内。当一个对象创建后,Java虚拟机(JVM)就会给这个对象分配一个引用自身的指针,这个指针的名字就是 this --------------------编程问答-------------------- this就是当前对象,谁在调用这个方法,this就是谁,比如说,你申明了一个Student对象stu,那么当你调用stu.xxx的时候,xxx方法里面的this就是这个stu, --------------------编程问答--------------------
引用 11 楼 yangfanacc 的回复:
this就是当前对象,谁在调用这个方法,this就是谁,比如说,你申明了一个Student对象stu,那么当你调用stu.xxx的时候,xxx方法里面的this就是这个stu,

同意
补充:Java ,  Java SE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,