作者qrtt1 (有些事,有时候。。。)
看板java
标题Re: [问题] this
时间Wed Jul 23 16:54:15 2014
※ 引述《gn00618777 (非常念旧)》之铭言:
: 在写Activity的程式码中
: TextView lb101=new TextView (this)
: 书上解释说参数是Contex物件,可以用this取得...
: 我以前学生时期的理解是 this 是你现在呼叫的物件本身,也就是lb101
[---------]
不是呦,是你那一个 Activity 本身
(我假设你在写 onCreate )
public class MyApp extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
TextView lb101=new TextView (this);
// ..........................................
}
}
http://docs.oracle.com/javase/tutorial/java/javaOO/thiskey.html
Within an instance method or a constructor,
this is a reference to the current object — the object whose method
or constructor is being called.
You can refer to any member of the current object
from within an instance method or a constructor by using this.
: 他说啥contex物件?不太懂
: TextView这建构子参数为何还要丢自己建立的物件?
: 谢谢。
因为它的继承关系是长成这个样子!
http://developer.android.com/reference/android/app/Activity.html
java.lang.Object
android.content.Context
android.content.ContextWrapper
android.view.ContextThemeWrapper
android.app.Activity
所以 Activity 物件,也能视为 Context 物件。
有不懂时,先翻翻 javadoc 找找线索噜,挺有帮助的。
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.231.151.73
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/java/M.1406105657.A.94D.html
※ 编辑: qrtt1 (36.231.151.73), 07/23/2014 16:57:49
1F:推 LPH66:这就是继承的"IS-A"(「是一个」)关系 07/23 16:56
2F:→ qrtt1:class BadQrtt1 extends Qrtt1 {} 07/23 16:58
3F:→ qrtt1:坏掉的 qrtt1 是一个 qrtt1 (只是他坏掉了...xd) 07/23 16:58
※ 编辑: qrtt1 (36.231.151.73), 07/23/2014 17:00:36
4F:推 gn00618777:我大概懂了,TextView这类别,需要用到Activity物件的 07/23 17:32
5F:→ gn00618777:某成员或某成员方法,只是..为啥会用到?有简单的例子吗 07/23 17:32