程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> J2SE >> J2SE綜合:對Final的一點認識(1)

J2SE綜合:對Final的一點認識(1)

編輯:J2SE

在編程的過程中,我們總是會遇到final關鍵字,那麼我們對final怎麼理解呢,下面是我的一點粗淺認識,和大家共享。
 
package zy.pro.jbd.demo;
 public class FinalDemo {
 final  int  numInt1=16;
 final String str="zy";
 final String str1;
 
注意:str1在此沒有初始化,那麼必須要在構造函數中初始化,否則要報錯。也就是說,final變量必須要進行初始化。
 
public FinalDemo() {
 str1="zy";
 }
 public static void main(String[] args){
 System.out.println("-------------------------------------------------");
 }
 public void executeFinalTest(){
 }
 private void testFinalInt(){
 numInt1+=1;
 
上面,我們定義了numInt1為final變量,在次將會出現一個錯誤:cannot assign a final value to final variable numInt1 at line 24
 
由此可見,如果一個基本型別的變量被定義成了final,那麼此變量將不能再被改變。
 
System.out.println(numInt1);
 }
 private void testFinalString(){
 str=str+"aaaaa";
 
此處同樣也會報錯。
 
System.out.println(str);
 }
 }
 
我們再作一個測試:
 
(1)先創建一個類:A.Java
 
package zy.pro.jbd.testbase;
 public class A {
 int t=10;
 public A() {
 }
 public void setT(int t){
 this.t=t;
 }
 public int getT(){
 return this.t;
 }
 }  (2)寫如下測試代碼
 
final A a = new A();
 public void testFinalObject() {
 a.setT(29);
 System.out.println("t:   " + a.getT());
 }
 
測試輸出的結果是:
 
t:   29

本文來自編程入門網:http://www.bianceng.cn/Programming/Java/201107/27859.htm

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved