这句话的意思就是说通过this可以实现一种隐式的多态性。
不知道你懂不懂C#,我有一段C#的源代码示例:using System;class MyBase
{
public virtual void display()
{
Console.WriteLine("MyBase");
}
}class MyChild:MyBase
{
public override void display()
{
Console.WriteLine("MyChild");
}
}public class Test
{
public static void Main()
{
MyBase mb=new MyChild();
mb.display();
}
}
//////////////////////////以上是显式实现using System;class MyBase
{
public void display()
{
Console.WriteLine(this.ToString());
}
}class MyChild:MyBase
{
public new void display()
{
Console.WriteLine(this.ToString());
}
}public class Test
{
public static void Main()
{
MyBase mb=new MyChild();
mb.display();
}
}
////////////////////以上是使用this隐式实现动态绑定!你运行一下,就知道结果是一样的了!
不知道你懂不懂C#,我有一段C#的源代码示例:using System;class MyBase
{
public virtual void display()
{
Console.WriteLine("MyBase");
}
}class MyChild:MyBase
{
public override void display()
{
Console.WriteLine("MyChild");
}
}public class Test
{
public static void Main()
{
MyBase mb=new MyChild();
mb.display();
}
}
//////////////////////////以上是显式实现using System;class MyBase
{
public void display()
{
Console.WriteLine(this.ToString());
}
}class MyChild:MyBase
{
public new void display()
{
Console.WriteLine(this.ToString());
}
}public class Test
{
public static void Main()
{
MyBase mb=new MyChild();
mb.display();
}
}
////////////////////以上是使用this隐式实现动态绑定!你运行一下,就知道结果是一样的了!
b.addActionListener(this);按钮监听
int a;
int b;
method(int a,int b){
this.a(本处的是域变量)=a(本处是参数);
this.b=b;
}
------
每当调用一个实例方法时,this变量将被设置成引用该实例方法的特定的类对象。
使用的时候你只要知道this代表的那个对象就可以了,它会隐式为你实现多态性。
...................