“这个”背景是什么意思?

时间:2011-06-29 12:53:05

标签: java android

我通过互联网查看了很多Android教程。在这些教程中,他们使用this上下文来处理上下文。我知道this关键字在Java中的含义,但我无法在Android编程中使用this关键字。例如,在AlertDialog.Builder,在developer.android.com网站上,上下文的参数只有一个参考,但我无法了解这里this的含义。

6 个答案:

答案 0 :(得分:12)

如果您有活动,可以使用this,因为:

  • this是类的当前实例
  • 一个Activity继承自“Context”类

因此您可以将当前的活动用作上下文。

查看here了解Acitivty文档

here有关this

的说明

答案 1 :(得分:0)

如果你知道"this"变量..那么你也可能知道它保存了当前对象的引用..所以如果某个方法要求一个Context对象,你只能在它传递this变量时扩展类,如Context或Activity ..因为Activity实现了上下文,所以它显然是一个Context

答案 2 :(得分:0)

当前类的上下文在Android中称为This。

答案 3 :(得分:0)

Here is another question他们在那里解释Context。当活动和服务扩展为Context时,此上下文是对此活动或服务的引用。

答案 4 :(得分:0)

关键字this只是一个引用 - 在类的实例中 - 自身。

Android中有两个常用的“this”。这些并不是Android特有的,但在Java中一般都有效。

  1. this.getResources()表示要在getResources()个实例上调用this方法。它的this部分通常是不必要的,并且是隐式使用的。

  2. Foo.this.getResources()可以从内部类调用。如果内部类也定义了getResources(),但是你想要在另一个类中定义的版本,这可能很方便。

答案 5 :(得分:0)

this是对当前对象的引用

您可以使用this来引用任何当前实例及其超类的任何实例。

如果您的课程扩展了活动。这是一种继承的情况。您的类是子类,Activity类是父类。然后你可以使用这个关键字来获取Activity的实例  beacause Activity类是你班级的超类。这是 隐式投射

还将Activity类Context作为超类。所以你可以使用这个关键字引用该类的实例。

由于