Android开发final的用法
<h1 class="title">Android开发final的用法 </h1><div class="author">
<div class="info"><span class="name"><span class="name"><br></span></span>
<div class="meta"><span class="publish-time"> </span></div>
</div>
</div>
<div class="show-content" data-note-content="">
<div class="show-content-free">
<p>final如果修饰类,该类不能被继承;</p>
<p>final如果修饰变量,该变量不能被修改,不能再重新赋值,即变为常量;</p>
<p>final如果修饰方法,该方法不能被重写;</p>
<p>此外,只有被final修饰的局部变量可以用在内联方法里。比如onClick里面如果调用button.setText(...),就必须将button设置为final,即:</p>
<pre class="hljs java"><code class="java"> <span class="hljs-keyword">public <span class="hljs-class"><span class="hljs-keyword">class <span class="hljs-title">MyActivity <span class="hljs-keyword">extends <span class="hljs-title">Activity {
<span class="hljs-function"><span class="hljs-keyword">protected <span class="hljs-keyword">void <span class="hljs-title">onCreate<span class="hljs-params">(Bundle icicle) {
<span class="hljs-keyword">super.onCreate(icicle);
setContentView(R.layout.content_layout_id);
<span class="hljs-keyword">final Button button = (Button) findViewById(R.id.button_id);
button.setOnClickListener(<span class="hljs-keyword">new View.OnClickListener() {
<span class="hljs-function"><span class="hljs-keyword">public <span class="hljs-keyword">void <span class="hljs-title">onClick<span class="hljs-params">(View v) {
<span class="hljs-comment">// Perform action on click
}
});
}
}
</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></code></pre>
<p>使用final的目的大概有以下两条:</p>
<p>1、Java中内部类调用外部类局部变量时要final。</p>
<p>2、当我们写的代码行已经很多的时候,自己可能就忘了之前的意图,把button改了,结果就是:没有按照我们的意愿运行,然后报错。而final修饰后,是不允许修改的,就避免了这样的错误。</p>
</div>
</div><br><br>
来源:https://www.cnblogs.com/it-tsz/p/11371992.html
頁:
[1]