国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Java > 正文

java中final修飾符實(shí)例分析

2019-11-26 15:21:10
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

final修飾符:

final修飾成員變量必須有程序員顯示指定初始值。
類的Field:必須在靜態(tài)初始化塊中或聲明該Field時(shí)指定初始值。
實(shí)例Field:必須在非靜態(tài)初始?jí)K中,聲明Field或者構(gòu)造器中指定初始值。

final局部變量:必須由程序員顯示初始化。

final修飾的基本變量和引用類型變量的區(qū)別?

final修飾的基本變量:不能對(duì)基本變量重新賦值。
final修飾的引用變量:只保證這個(gè)引用類型所引用的地址不會(huì)變,即
一直引用同一個(gè)對(duì)象,但這個(gè)對(duì)象完全可以發(fā)生改變。

復(fù)制代碼 代碼如下:

/**
  
*/
import java.util.*;
public class Demo5
{
 public static void main(String[] args)
 {
  final B b = new B(22);
  b.test();
  //合法  改變值,但仍是指向同一個(gè)引用
  b.setAge(20);
  System.out.println(b.getAge());
  // 非法
  // b = null;
  b.test2();
 }
}
 /**
 fianl修飾成員變量
*/
class A
{
 //合法
 final int a = 10;
 //構(gòu)造器或初始化化塊中指定初始值
 final String str;
 final int c;
 final static double d;
 {
  str = "hello";
  //非法
  // a = 100;
 }
 static
 {
  d = 100;
 }
 
 // 構(gòu)造器可對(duì)沒在初始化塊中指定的Field指定初始值
 public A()
 {
  // 非法
  // str = "ddd";
  c = 1000;
 }
 public double changFinal()
 {
  // 不能再普通方法中為final指定初始值
  // return d = 1000.90;
  return 0;
 }
}
 /**
 fianl修飾數(shù)組 對(duì)象
*/
class B
{
 private int age;
 public B()
 {
 
 }
 
 public B(int age)
 {
  this.age = age;
 }
 
 public void setAge(int age)
 {
  this.age = age;
 }
 
 public int getAge()
 {
  return this.age;
 }
 
 public void test()
 {
  final int[] arr={23,434,56,898};
  System.out.println(Arrays.toString(arr));
  Arrays.sort(arr);
  System.out.println(Arrays.toString(arr));
  arr[2] = 200;
  System.out.println(Arrays.toString(arr));
  //下面對(duì)Arr重新賦值 非法
  // arr = null;
 }
 
 /**
  加深對(duì)final的理解
 */
 public void test2()
 {
  String str1 = "美好未來(lái)";
  //直接引用常量池中的"美好未來(lái)"
  String str2 = "美好"+"未來(lái)";
  //true
  System.out.println(str1 == str2);
  
  String s1 = "美好";
  String s2 = "未來(lái)";
  String s3 = s1+s2;
  //false  s1 s2只是變量 在編譯時(shí)期不能確定
  //若想在編譯時(shí)期確定 則用 final修飾 s1 s2
  System.out.println(str1 == s3);
 }
}

小伙伴們是否對(duì)java中final修飾符有所了解了呢,相信注釋中已經(jīng)給大家解釋的很清楚了,我這里就不再

主站蜘蛛池模板: 浏阳市| 鄂伦春自治旗| 安福县| 都江堰市| 大庆市| 姚安县| 江陵县| 上蔡县| 离岛区| 嘉荫县| 安福县| 岑溪市| 宜良县| 教育| 莱州市| 金川县| 壤塘县| 奉新县| 龙井市| 安图县| 靖边县| 婺源县| 萨嘎县| 广河县| 衡阳县| 丁青县| 甘肃省| 且末县| 尚义县| 岢岚县| 达尔| 吴忠市| 若尔盖县| 新建县| 北宁市| 新兴县| 泽州县| 和平县| 拉孜县| 铜川市| 荣昌县|