Tag: 决赛

在匿名类中使用最终变量时的垃圾收集

如果我有类似以下的代码: public Constructor(final Object o) { taskSystem.add(new CycleTask(15, 15, -1) { @Override public void execute() throws Throwable { //access o here every 15 cycles forever } }); } 什么时候会被垃圾收集,如果有的话? 只有当任务被收集,或者它将永远留在记忆中,因为它是最终的?

最终关键字如何在Android中运行

我知道在Java中我们对变量或其他东西使用final关键字来使其值不被改变。 使用final什么区别,如下例所示? public class MainActivity extends ActionBarActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final TextView campoTexto = (TextView) findViewById(R.id.campoTexto); Button botaoTexto = (Button) findViewById(R.id.botaoTexto); Button botaoCor = (Button) findViewById(R.id.botaoCor); final RelativeLayout fundoTela = (RelativeLayout) findViewById(R.id.fundoTela);

如果它没有在代码中修改,我应该声明一个java字段’final’吗?

我的问题主要是关于表现。 编译器知道更好,例如,在对象实例化之后不修改某个变量。 那么,为什么要打扰决赛呢? 我认为可能会有许多结构/逻辑原因,但从性能的角度来看呢? 有关系吗? 谢谢,