为什么在android中使用[static final]?

时间:2015-07-19 12:29:25

标签: java android

我是Android的新手。 最近我读了很多关于Android的源代码。 我真的不明白这些代码。

public DemoActivity {
     private static final String TAG = "DemoActivity";

   //.........
}

为什么使用静态

3 个答案:

答案 0 :(得分:4)

在这种情况下使用静态,因为名为TAG的字符串与DemoActivity类本身相关联,而不与DemoActivity的任何特定实例相关联。在这种情况下,它是一个引用类名称的常量,对于类DemoActivity的任何实例都是相同的,因此static也是如此。

答案 1 :(得分:1)

static final String TAG = "DemoActivity" ==>这将使字符串文字"DemoActivity"成为编译时常量,即,在代码中使用TAG的任何地方,它将在值"DemoActivity"期间替换为值QPlayer $ = QPlayer.player; BooleanBuilder builder = new BooleanBuilder(); builder.and(Expressions.dateOperation(Integer.class, Ops.DateTimeOps.DIFF_YEARS, Expressions.currentDate(), $.birthDate).between(3, 5)); playerRespository.findAll(builder); 汇编。即,在字节码中。

答案 2 :(得分:0)

通常在我们创建标签时,我们将其声明为

public final static String TAG = "APPLICATION_TAG";
  1. 使用static的唯一目的是使变量存在于内存中 只要有父母的生命周期
  2. 其他用途是您可以在其他活动中使用此标记

    String getTag = DemoActivity.Tag;