final修饰符(2)

final局部变量

      系统不会对局部变量进行初始化,局部变量必须又程序员显示初始化,因此使用final修饰局部变量,可以在声明时指定默认值,也可以在后面的代码中对该final变量赋初始值,但只能赋值一次

package com.j1803.finalTest;
public class demo {
 public void test(final int a){
  //错误,不能对final修饰的形参赋值,下面语句非法
  //a=23;
  System.out.println(a);
 }
 public static void main(String[] args) {
  //定义final局部变量时指定默认值,则string变量无法重新赋值
  final String str="hello";
  //非法语句
  //str="world";
  //定义final局部变量时没有指定默认值,则d变量可被赋值一次
  final double d;
  d=45.89;
  //下面语句非法
  //d=78.23;
 }
}
原文地址:https://www.cnblogs.com/shadow-shine/p/9602094.html