Android构造函数和onCreate()之间有什么区别?

时间:2011-08-01 14:49:37

标签: java android

我对Java和Android Java之间的区别感到有些困惑。假设我有一个Activity类AndroidX。我们知道没有main函数,也没有AndroidX()构造函数。我意识到onCreate()最有可能初始化AndroidX Activity,但为什么没有main?有什么区别?

4 个答案:

答案 0 :(得分:4)

请考虑您的活动是多个* 主要 * s,并且您的清单会将执行指向其中一个。

还要考虑我们之前所知的构造函数是隐藏,现在它总是被称为onCreate()

足够公平以继续前进?

答案 1 :(得分:1)

此图可能有所帮助。 http://developer.android.com/images/activity_lifecycle.png

在活动文档中,他们详细说明了每个函数的含义(即onCreate(),onResume()等)。 http://developer.android.com/reference/android/app/Activity.html

答案 2 :(得分:1)

没有“主要”因为假设您的应用正在运行或未运行。但在Android上还有许多其他可能的状态,你的应用可能会暂停,停止,启动等...

Check out this link可以很好地概述Android Activity生命周期。

答案 3 :(得分:1)

Android Developer Reference的Activity页面中描述了onCreate的工作原理。具体在这里:

  

onCreate(Bundle)是初始化活动的地方。最重要的是,在这里,您通常会使用定义UI的布局资源调用setContentView(int),并使用findViewById(int)检索该UI中需要以编程方式进行交互的窗口小部件。

从某种意义上说,您可以将此方法视为Activity的构造函数,因为初始化在那里处理(请参阅Activity Lifecycle)。

至于主要,请认为它对你隐藏。通常,您要为UI元素(如按钮或文本字段)注册侦听器,然后根据这些UI元素的输入进行操作。这些侦听器处理对方法的调用,这些调用可能会操纵数据或更改UI的显示方式。