Java中的当前对象this问题
在Java中this可以表示当前对象,现在的问题是:这个“当前对象”是不是表示类的实例?如果这个类继承了另外一个类,那么这个“当前对象”又表示什么?如果这个类实现了一个接...
在Java中this可以表示当前对象,现在的问题是:这个“当前对象”是不是表示类的实例?如果这个类继承了另外一个类,那么这个“当前对象”又表示什么?如果这个类实现了一个接口,那么这个“当前对象”又表示什么?如果这个类既继承了另外一个类又实现了一个接口,那么这个“当前对象”又表示什么呢?
展开
3个回答
展开全部
对象和类型是有区别的。你上面提到的父类和接口都是类型,对象就是一个实例。举个例子吧,比如学生是父类,大学生是子类,然后人是接口。只要你实例化了一个大学生的对象,他即使人(接口),学生(父类),同样也是大学生。。。。this是指这个对象。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
给你一个一看能明白的例子
常规的是这样
public class TestThis {
public static void main(String[] args) {
TestThis tt=new TestThis();
System.out.println(tt);
tt.pintThis();
}
public void pintThis(){
System.out.println(this);
}
}
上面的不好明白其实相当于这样写:
public class TestThis {
public static void main(String[] args) {
TestThis tt=new TestThis();
System.out.println(tt);
tt.pintThis(tt);
}
public void pintThis(TestThis tthis){
System.out.println(tthis);
}
}
可以理解为谁调用pintThis()方法,this就是调用这个方法对象的实例,在使用this的时候它不知道this是谁,等到对象创建了以后调用pintThis()时才知道this是谁
常规的是这样
public class TestThis {
public static void main(String[] args) {
TestThis tt=new TestThis();
System.out.println(tt);
tt.pintThis();
}
public void pintThis(){
System.out.println(this);
}
}
上面的不好明白其实相当于这样写:
public class TestThis {
public static void main(String[] args) {
TestThis tt=new TestThis();
System.out.println(tt);
tt.pintThis(tt);
}
public void pintThis(TestThis tthis){
System.out.println(tthis);
}
}
可以理解为谁调用pintThis()方法,this就是调用这个方法对象的实例,在使用this的时候它不知道this是谁,等到对象创建了以后调用pintThis()时才知道this是谁
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询