final关键字用于修饰成员方法

修饰方法

格式如下:

修饰符 final 返回值类型 方法名(参数列表){
//方法体
}

  重写被 final 修饰的方法,编译时就会报错。

final关键字用于修饰局部变量

修饰变量

1. 局部变量——基本类型

基本类型的局部变量,被final修饰后,只能赋值一次,不能再更改。代码如下:

public class FinalDemo1 {
public static void main(String[] args) {
// 声明变量,使用final修饰
final int a;
// 第一次赋值
a = 10;
// 第二次赋值
a = 20; // 报错,不可重新赋值
// 声明变量,直接赋值,使用final修饰
final int b = 10;
// 第二次赋值
b = 20; // 报错,不可重新赋值
}
}

思考,如下两种写法,哪种可以通过编译?

写法1:

final int c = 0;
for (int i = 0; i < 10; i++) {
c = i;
System.out.println(c);
}

写法2:

for (int i = 0; i < 10; i++) {
final int c = i;
System.out.println(c);
}

根据 final 的定义,写法1报错!写法2,为什么通过编译呢?因为每次循环,都是一次新的变量c。这也是大家 需要注意的地方。

最新文章

  1. Android using Accelerometer
  2. Java Socket编程题库
  3. ios本地推送
  4. 【转】IOS中的release和nil
  5. TreeList的使用
  6. The method load(Class, Serializable) in the type HibernateTemplate is not applicable for the arguments (Class, int)
  7. Eclipse MyEclipse 复制项目 复制现有项目 复制功能相似项目
  8. 【安装SQLserver2008R2 出现错误,临时类 result=1】
  9. 【Linux】CentOS 学习笔记之一(安装配制)
  10. Markdown例子
  11. vue.js框架原理浅析
  12. GO语言系列(四)- 内置函数、闭包与高级数据类型
  13. 4ci
  14. MUI动态生成轮播图片
  15. June 5. 2018 Week 23rd Tuesday
  16. 《MySQL5.7从入门到精通(视频教学版)》
  17. 【bzoj4811】[Ynoi2017]由乃的OJ 树链剖分+线段树区间合并
  18. Python IPy模块
  19. CentOS7 开放服务端口
  20. 《Linux 性能及调优指南》2.4 基准工具

热门文章

  1. HAProxy反向代理实例
  2. CC1,3,6回顾
  3. python——os模块学习
  4. 20、求解从1到20000内的所有水仙花数:每位数字的n次方之和等于其本身,n是这个数的位数。
  5. i春秋Login
  6. rpm环境安装dpkg包管理工具
  7. thinkphp6的主要特性
  8. MyEclipse连接MySQL
  9. ArcObjects SDK开发 006 ICommand和ITool接口
  10. Google地图瓦片