final 形参的作用
来源:互联网 发布:淘宝种子靠谱店 编辑:程序博客网 时间:2024/04/29 16:28
当定义一个final形参时,是保证这个形参的值在方法体运行中不被改变,如:
class Test
{
static void fn(int a) // Java 中基本类型有引用传值吗? 若没有的话,形参的 final int a 这种形式有什么意义?
{
a=9;
}
public static void main(String[] args)
{
int b=0;
fn(b);
System.out.println(b);
}
}
首先从main入手.main方法中定义了int b=0,同时将b通过参数传递给了静态方法 fn().也就是说静态方法fn中得到了变量b的值.既a=0.此时方法fn中又重写了变量a,赋予了9
如果把代码改为:
class Test
{
static void fn(final int a) // Java 中基本类型有引用传值吗? 若没有的话,形参的 final int a 这种形式有什么意义?
{
a=9;
}
public static void main(String[] args)
{
int b=0;
fn(b);
System.out.println(b);
}
}
编译器将无法通过。也就是说在方法体fn()不能改变形参a的值。将形参定义为final有什么作用呢?
虽然在方法中对形参的修改在方法返回时无效,但是在方法内部还是有效的,加上final的话,在方法里对这个形参的赋值语句是无法通过检查的,避免形参被修改后影响后面的语句。
作用是防止形参a在方法中被改变了,而在方法的其他地方只希望使用原始值,如
static void fn(int a) {
a=5;//改变了,如果是常量,那么这里编译将不能通过
……//若干条语句之后
int b=1/a;//这里我的a本来想用参数a,却在疏忽之中使用了改便之后的值,编译阶段无法发觉。
}
- final 形参的作用
- final形参的作用
- final 形参的作用
- final的作用
- final关键字的作用
- final关键字的作用
- final关键字的作用
- final的作用
- final类的作用
- 谈谈final的作用
- 谈谈final的作用
- Java的final作用
- final关键字的作用
- final关键字的作用
- final的作用
- 读书笔记之final的作用
- JAVA final关键字的作用
- JAVA中final的作用
- server.createobject总结
- jsp中的数据库编程
- Native2Ascii用法
- What ASP.NET Developers Should Know About JavaScript
- 如何利用VC编写有汇编代码的跨平台代码
- final 形参的作用
- VS.NET开发环境小助手(行数统计和拼写检查)
- HTTP 回應代碼的意義
- 基于WEB应用开发的java程序员必备工具
- auto_ptr
- bitset
- 两个list中的item之间添加与清除,顺序变动
- BizTalk Server 2006使用过程中常见的问题及其解决办法
- 视图的全屏显示