我的问题是JAVA中没有指针...... 但是当我们开始另一项活动时,我们会这样做:
Intent in = new Intent(MyActivity.this, NewActivity.class);
startAcitivity(in);
所以我的问题是MyActivity.this
??
答案 0 :(得分:1)
撰写MyActivity.this
与撰写this
相同,如果您在非嵌套类中,或到顶级类
见这个例子:
public class TopLevel{
public static void main(String[] args){
new TopLevel().printClass();
}
public TopLevel(){
new LowerLevel().printClass();
}
public void printClass(){
System.out.println("Outer Class: ");
// Will print something like "TopLevel.class"
System.out.println(this.getClass());
}
public class LowerLevel{
// This is a Nested-Class.
public void printClass(){
System.out.println("Nested Class: ");
// Will print "TopLevel$LowerLevel.class"
System.out.println(this.getClass());
// Will print "TopLevel.class" again
System.out.println(TopLevel.this.getClass());
}
}
}
在嵌套类中使用this
的某些引用不会引用与在顶级类中使用它时相同的实例。因此,要在嵌套类中获取外部类的“上下文”,还要指定您想要this
- 上下文的类。
答案 1 :(得分:1)
在java指针中没有明确允许, 但是,在Java中通过引用(对象)传递是隐含地基于指针概念的东西。
在您的情况下,您将父类的上下文传递给子类, 这实际上是通过参考概念传递的。
希望这有帮助。