final类 引用变量不能变 String也是final的 为啥string的引用变量能变
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了final类 引用变量不能变 String也是final的 为啥string的引用变量能变相关的知识,希望对你有一定的参考价值。
final类的 引用变量不能变
为什么string的引用变量能变
final关键字!
一、关于final关键字
final关键字可以用来修饰类、方法和变量(包括成员变量和局部变量),并且不能被继承、不能被重写、不能二次赋值。
二、当final关键字修饰一个变量时,是引用变量不能变,还是引用的对象不能变?
当final关键字修饰一个变量时,是引用的变量不能变,引用变量所指的对象中的内容还是可以改变的。
例如:
final String a = new String("内容");
执行如下的语句将报告编译错误:
a = new String("");
如果改变里面的内容则是可以通过编译的:
a.append("新的内容");
三、final和static的区别
用final修饰,主要是为了“不可修改”,从而提高安全性 。而static重点在于共享,方便。在类里创建一个static修饰的函数,则可以直接通过类名访问,该类new出来的对象,也可以共享static函数,或者static修饰的共有属性。
以上是关于final类 引用变量不能变 String也是final的 为啥string的引用变量能变的主要内容,如果未能解决你的问题,请参考以下文章