java基础final
来源:互联网 发布:淘宝客如何做免单活动 编辑:程序博客网 时间:2024/05/18 16:19
转http://blog.csdn.net/linchunhua/article/details/5305452
final的作用随着所修饰的类型而不同
1、final修饰类中的属性或者变量
无论属性是基本类型还是引用类型,final所起的作用都是变量里面存放的“值”不能变。
这个值,对于基本类型来说,变量里面放的就是实实在在的值,如1,“abc”等。
而引用类型变量里面放的是个地址,所以用final修饰引用类型变量指的是它里面的地址不能变,并不是说这个地址所指向的对象或数组的内容不可以变,这个一定要注意。
例如:类中有一个属性是final Person p=new Person("name"); 那么你不能对p进行重新赋值,但是可以改变p里面属性的值,p.setName('newName');
final修饰属性,声明变量时可以不赋值,而且一旦赋值就不能被修改了。对final属性可以在三个地方赋值:声明时、初始化块中、构造方法中。总之一定要赋值。
2、final修饰类中的方法
作用:可以被继承,但继承后不能被重写。
3、final修饰类
作用:类不可以被继承。
思考一个有趣的现象:
byte b1=1;
byte b2=3;
byte b3=b1+b2;//当程序执行到这一行的时候会出错,因为b1、b2可以自动转换成int类型的变量,运算时java虚拟机对它进行了转换,结果导致把一个int赋值给byte-----出错
如果对b1 b2加上final就不会出错
final byte b1=1;
final byte b2=3;
byte b3=b1+b2;//不会出错,相信你看了上面的解释就知道原因了。
- Java基础: 关键字 final
- java基础--final用法
- java基础--final用法
- final关键字 -----JAVA基础-------
- Java基础----final关键字
- [Java基础] final关键字
- java基础:final
- java基础-final关键字
- java基础--final关键字
- JAVA 基础 final关键字
- [java基础]final关键字
- java-基础-final
- Java基础--final关键字
- java 基础 ---final
- 【Java基础】final
- Java基础---final关键字
- java基础final
- Java基础之final
- [杂乱]RTSP初视
- python学习笔记
- 购买阿里云服务器和域名之后需要做的事
- Python学习_我该怎么使用函数及函数中传递列表
- c++实验一
- java基础final
- 第三方登录
- 获取mnist训练数据集input_data.py
- EMMC 坏块
- 多项式计算//线性表练习
- Qt各种采样率录音 录音到内存
- ImageLoader的工具类
- ajax 中的contentType
- 冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。 它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要