答案 0 :(得分:3)
创建this
时需要TextView
的原因是因为TextView
(您正在调用的那个)的构造函数之一获取Context
个对象作为参数。
这基本上意味着您必须TextView
一个Context
才能创建它。
你从哪里获得这个背景?嗯,活动是一种上下文(Activity
是Context
的子类)!你是在活动类中创建TextView
吗?所以只需将此活动用作上下文!
知道了吗?使用此活动作为TextView
的上下文!这就是你把this
放在那里的原因。 this
指的是代码当前正在运行的对象。
由于this
引用从类创建的对象,因此无法在静态方法中使用this
,因为静态方法中的代码不能在任何对象上运行。
this
的另一个用途是构造函数:
class MyClass {
private int a, b;
public MyClass(int a, int b) {
this.a = a;
this.b = b;
}
}
由于编译器无法知道您的a
或b
,因此您必须添加this
以引用该类中的a
。
答案 1 :(得分:-1)
this
指的是被调用或初始化的当前对象的实例。