final修饰变量】的更多相关文章

final修饰基本类型变量 当使用final修饰基本类型变量时,不能对基本类型变量重新赋值,因此基本类型变量不能被改变 final修饰引用类型变量 当使用final修饰引用类型变量时,它保存的仅仅是一个引用,final只能保证这个引用类型变量所引用的地址不会改变,即一直引用同一个对象,但这个对象完全可以改变 package com.j1803.finalTest; import java.util.Arrays; public class FinalReferenceTest {  public…
有如下一种场景. 1.在文件PaymentConfig.java中存在如下变量public static final desc="描述" 2.类Test.java中使用了desc变量,String xxDesc = PaymentConfig.desc. 问题描述:由于业务原因需要更改desc变量,于是我更改desc="描述123",将PaymentConfig.java重新编译部署. 但是在生成环境中Test类取得的xxDesc仍然是"描述",…
Java中的关键字final修饰变量.方法.类分别表示什么含义? 先看一个简单的介绍 修饰对象 解释说明 备注 类 无子类,不可以被继承,更不可能被重写. final类中的方法默认是final的 方法 方法不能在子类中被覆盖 类的private方法会隐式地被指定为final方法.final方法不能被子类的方法覆盖,但可以被继承. 变量 称为常量,初始化以后不能改变值. 用final修饰的成员变量表示常量,值一旦给定就无法改变!final修饰的变量有三种:静态变量.实例变量和局部变量,分别表示三种…
我们都知道final修饰变量时 会变为常量,但是使 用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变? 下面让我们来看这段代码: /** * 验证final修饰的变量是引用不能变,还是引用的对象不能变 * StringBuilder 线程不安全 但速度快 * 引用初始化以后不能被改变 --- 不是指变量的值不可变,而是指向的变量地址不可变 * @author Tomato * */ public class TestFinal { public static void mai…
final的定义: 在英文层面上,final的意思是"最后的","最终的"意思,在Java中也同样表示出此种含义. final的运用对象: final适用于修饰变量(包括类属性.对象属性.局部变量和形参).方法(包括类方法和对象方法)和类. final修饰类: 由于final定以后的对象不能进行修改和重载,用final修饰的类不能被继承,即不能拥有自己的子类.如果视图对一个已经用final修饰的类进行继承,在编译期间或发生错误. final修饰变量: 一旦定义了fi…
final从字面上理解含义为“最后的,最终的”.在Java中也同样表示出此种含义. final可以用来修饰变量(包括类属性.对象属性.局部变量和形参).方法(包括类方法和对象方法)和类. 1. final修饰类: final修饰类即表示此类已经是“最后的.最终的”含义.因此,用final修饰的类不能被继承,即不能拥有自己的子类. 如果视图对一个已经用final修饰的类进行继承,在编译期间或发生错误. 2. final修饰方法: final修饰的方法表示此方法已经是“最后的.最终的”含义,亦即此方…
一.简介 final修饰符可以用来修饰变量.方法.类.final修饰变量时一旦被赋值就不可以改变. 二.final成员变量 成员变量是随类初始化或对象初始化而初始化的.当类初始化的时候,会给类变量分配内存:当对象初始化的时候,会给实例变量分配内存. 所以说,final修饰的变量可以在申明的时候指定初始值,也可以再静态初始化块中指定初始值:final修饰的实例变量除了在申明的时候指定初始值,还可以在构造器或者在普通初始化块中指定初始值. 需要注意的是: 指定初始值只能在一处进行,不可既在申明的时候…
知识点: 1.final关键字用于修饰类.变量和方法 2.有点类似C#里的 sealed 关键字,用于表示它修饰的方法.变量和类不可以再被改变 3.final修饰变量时,表示该变量一旦获取了初始值,就不可以再被改变 4.final可以修饰成员变量(包括类变量.实例变量),也可修饰局部变量.形参 5.有的书上说final修饰的变量不能被赋值,这是错误的,严格的说,fanal修饰的变量,一旦被赋值就不可再次赋值改变 6.因为final修饰的变量赋值后不可再被改变,所以final修饰的成员变量和局部变…
final修饰变量 final修饰符一般用于基本数据类型(int,float)或者不可变对象(String).这时候可以看作常量变量. 但是当final作用于可变数据类型时(数组,一般对象),仅仅表示存储在该变量中的对象的引用不被改变,但该对象的属性依然可以改变. 下面是final作用于可变数据类型时的例子 public class main01 { public static void main(String[] args) { final T t = new T(10); final int…
一.final 修饰变量,被final修饰的变量在被赋初始值之后,不能对它重新赋值 修饰实例变量,必须显示指定初始值,可以在三个位置指定初始值:         1.定义final实例变量时指定初始值         2.在非静态初始化块中为final变量指定初始值         3.在构造器中为final实例变量指定初始值     对于final实例变量,这三种方式都会被抽取到构造器中赋初始值   修饰类变量,同样必须显示指定初始值,可以在两个位置指定初始值:         1.定义类变量…