我是Android編程新手。我想知道,在這個代碼什麼是this
在「this」在TextView中的作用textView = new TextView(this);
TextView textView = new TextView(this);
這將指向一個類或方法?我從here複製了這段代碼。
我是Android編程新手。我想知道,在這個代碼什麼是this
在「this」在TextView中的作用textView = new TextView(this);
TextView textView = new TextView(this);
這將指向一個類或方法?我從here複製了這段代碼。
this
引用當前對象的實例被調用或初始化。
的原因,你創建一個TextView
是因爲TextView
的構造函數(你調用的)中的一種採用Context
對象作爲參數時,需要this
。
這基本上意味着你必須給TextView
a Context
才能創建它。
你從哪裏獲得此背景?那麼,一項活動就是一種背景(Activity
是Context
的一個子類)!你正在創建一個活動課TextView
嗎?所以只要使用這個活動作爲上下文!
Got it?使用這個活動作爲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
這是在課堂上。
https://developer.android.com/reference/android/support/v7/app/AppCompatActivity.html/這指的是上下文並檢查TextView的構造函數@ https://developer.android.com/reference/ android/widget/TextView.html – Raghunandan
[在Java中使用這個關鍵字](https://docs.oracle.com/javase/tutorial/java/javaOO/thiskey.html) –