Java final修饰形参】的更多相关文章

转自:http://java.chinaitlab.com/base/836044.html public class BB{ public int i; } public class PP{ public static void f(final BB ref) //我的理解是无法修改ref { ; } public static void main(String args[]){ BB x = new BB(); f(x); System.out.println(x.i); //但事实上是修改…
final的定义: 在英文层面上,final的意思是"最后的","最终的"意思,在Java中也同样表示出此种含义. final的运用对象: final适用于修饰变量(包括类属性.对象属性.局部变量和形参).方法(包括类方法和对象方法)和类. final修饰类: 由于final定以后的对象不能进行修改和重载,用final修饰的类不能被继承,即不能拥有自己的子类.如果视图对一个已经用final修饰的类进行继承,在编译期间或发生错误. final修饰变量: 一旦定义了fi…
final从字面上理解含义为“最后的,最终的”.在Java中也同样表示出此种含义. final可以用来修饰变量(包括类属性.对象属性.局部变量和形参).方法(包括类方法和对象方法)和类. 1. final修饰类: final修饰类即表示此类已经是“最后的.最终的”含义.因此,用final修饰的类不能被继承,即不能拥有自己的子类. 如果视图对一个已经用final修饰的类进行继承,在编译期间或发生错误. 2. final修饰方法: final修饰的方法表示此方法已经是“最后的.最终的”含义,亦即此方…
有如下一种场景. 1.在文件PaymentConfig.java中存在如下变量public static final desc="描述" 2.类Test.java中使用了desc变量,String xxDesc = PaymentConfig.desc. 问题描述:由于业务原因需要更改desc变量,于是我更改desc="描述123",将PaymentConfig.java重新编译部署. 但是在生成环境中Test类取得的xxDesc仍然是"描述",…
转自:http://blog.csdn.net/manyizilin/article/details/51926230#L42 修饰符: 像其他语言一样,Java可以使用修饰符来修饰类中方法和属性.主要有两类修饰符: 访问修饰符:default, public , protected, private 非访问修饰符:final, abstract, strictfp 修饰符一般使用在一个语句的前端,例: public void Pig{ int a = 1; protected String b…
final关键字可以用于何处 修饰类:该类不可被继承 修饰变量:该变量一经初始化就不能被重新赋值,即使该值跟初始化的值相同或者指向同一个对象,也不可以 类变量: 实例变量: 形参: 注意可以修饰形参 局部变量 修饰方法:该方法不可被重写 final修饰成员变量 final修饰成员变量,必须显式的指定初始值,系统不会为final成员进行隐式初始化,不能在初始化前访问. 因为,不管是类变量还是实例变量,都有个初始化的过程,初始化赋值后便不能再赋值,如果不显式的指定初始值,那么这些变量就没有存在的意义…
一.简介 final修饰符可以用来修饰变量.方法.类.final修饰变量时一旦被赋值就不可以改变. 二.final成员变量 成员变量是随类初始化或对象初始化而初始化的.当类初始化的时候,会给类变量分配内存:当对象初始化的时候,会给实例变量分配内存. 所以说,final修饰的变量可以在申明的时候指定初始值,也可以再静态初始化块中指定初始值:final修饰的实例变量除了在申明的时候指定初始值,还可以在构造器或者在普通初始化块中指定初始值. 需要注意的是: 指定初始值只能在一处进行,不可既在申明的时候…
目录 Java中final修饰的数据 有初始值的final域 final+基本数据类型 final+引用数据类型 final与static final 空白final域 final修饰的参数 基本数据类型的参数 引用数据类型的参数 Java中final修饰的数据 final是Java中的一个重要关键字,它可以修饰数据.方法和类,本篇将从final修饰的数据角度对final做出总结. final修饰的数据代表着:永远不变.意思是,一旦你用final修饰一块数据,你之后就只能看看它,你想修改它,没门…
1. final修饰类  被修饰的类不能被继承,也没有子类.假如随意创建这些类的子类,子类可能会错误的修改父类的实现细节.出于安全原因,类的实现细节不允许有任何改动.在创建对象模型的时候,确信这个类不会再被扩展.注:如果对一个已经被final修饰的类进行继承操作,则会在编译的期间直接出现错误   2. final修饰方法 final修饰的方法表示此方法已经是"最后的.最终的"含义,亦即此方法不能被重写,(但是可以载多个final修饰的方法). 需要注意的一点是: 重写的前提是子类可以从…
问题:Java反射机制可以动态修改实例中final修饰的成员变量吗? 回答是分两种情况的. 1. 当final修饰的成员变量在定义的时候就初始化了值,那么java反射机制就已经不能动态修改它的值了. 2. 当final修饰的成员变量在定义的时候并没有初始化值的话,那么就还能通过java反射机制来动态修改它的值. 实验: 1. 当final修饰的成员变量在定义的时候就初始化了值 public Class Person { private final String name = "damon.hua…