【发布时间】:2011-06-23 05:46:29
【问题描述】:
我目前正在阅读 Sams 出版的《24 小时内自学 Android 应用程序开发》一书。我对 Java、Android 或其他方面比较陌生。我在 ActionScript 3 方面有非常扎实的背景,它与 Java 有足够的相似之处,语言本身并不难掌握,但我仍然对书中一些代码示例背后的基本原理有一些疑问。例如,下面是第 9 小时示例代码附带的一个函数:
private void processScores(final TableLayout scoreTable,
XmlResourceParser scores) throws IOException, XmlPullParserException{
在此函数签名中,作者已将 scoreTable 参数声明为 final。我有点疑惑他们为什么要这么做。我什至不会尝试为函数参数 scoreTable 分配一个新值(这在 ActionScript 中被认为是一种不好的做法)。此外,我实际上还没有看到有人在我检查过或移植到 AS3 的任何真实 Java 中这样做。
Android 开发中是否有一些特定的东西使得有时必须将某些函数参数声明为 final?
为什么 TableLayout 对象声明为 final,而不是 XmlResourceParser?
【问题讨论】: