在方法参数前面加final关键字就是为了防止数据在方法体中被修改。
主要分两种情况:第一,用final修饰基本数据类型;第二,用final修饰引用类型。
第一种情况,修饰基本类型(非引用类型)。这时参数的值在方法体内是不能被修改的,即不能被重新赋值。否则编译就通不过。例如:
1 public static void valid(final int ag){ 2 ag=9; 3 ag=10; 4 }
错误提示:
第二种情况,修饰引用类型。这时参数变量所引用的对象是不能被改变的。作为引用的拷贝,参数在方法体里面不能再引用新的对象。否则编译通不过。例如:
1 public static void valid(final String[] ag){ 2 ag=new String[9]; 3 }
这个的提示和上面是一样的。:“ The final local variable param2 cannot be assigned. It must be blank and not using a compound assignment.“
但是对于引用,如果我是这样,则不会报任何错,完全能编译通过。
1 public static void valid(final String[] ag){ 2 ag[0]="5"; 3 System.out.println(ag); 4 }
所以,final这个关键字,想用的话就用基本类型,还是很有作用的。引用类型,用于普通对象,对于容器对象,可修改其内的值。
参考: http://www.cnblogs.com/lan0725/archive/2013/05/24/3097573.html
相关推荐
- "poi-2.0-final.jar" 和 "poi-3.2-final.jar":这些是Apache POI库对应的JAR文件,包含了所有必要的类和资源,可以直接在Java项目中引用,以便利用POI的功能。 **压缩包子文件的文件名称列表**: 虽然没有具体的...
"Java-Final-Project:Java类的最终项目"这个项目可能是一个综合性的学习或实践项目,旨在让学生或者开发者掌握Java类的设计和应用。 在Java中,类是面向对象编程的基础,它是对象的模板,定义了对象的状态(数据...
【Java-Final-Project】是一个基于Java编程语言的最终项目,通常在学习Java课程或进行软件开发实践时作为总结性的任务。这个项目可能是为了检验学生对Java编程的全面理解和应用能力,包括面向对象编程、数据结构、...
在这个名为"java-final-check"的测试项目中,开发者旨在展示如何在Java中尝试覆盖final类的方法,尽管这在标准的Java语法中是不允许的。以下是对这个项目和Java final特性的详细解释。 1. **final类**: 当一个类被...
3. **跨平台兼容性**:由于基于Java,PDFBookmark-1.0.2-final可以轻松在不同操作系统上运行,无需为每种系统单独编写版本。只需确保系统安装了JRE,即可在Windows、Linux或Unix上运行此工具。 4. **书签管理**:...
【标题】"Aptech-Java-final-project"指的是一个基于Java技术的Aptech教育机构学期二(sem2)的最终项目。这个项目可能是为了帮助学生巩固他们在Java编程语言中学到的知识,通过实际操作来提升技能。Aptech是全球...
在这个“Java-Final-Project”中,我们关注的是一个特定的应用:一个基于Java的数独求解器。数独是一种逻辑游戏,玩家需要通过填数字填充一个9x9的网格,使得每一行、每一列以及每个3x3的小宫格(也称为子区域)内的...
《深入理解JPA:基于persistence-2_0-final-jar_and_schema.zip的解析》 在Java开发领域,Java Persistence API(JPA)是用于管理关系数据库中的对象持久化的一个重要标准。它为开发者提供了一种简洁、面向对象的...
该项目是东北大学(NEU)信息系统科学硕士课程2020年春季学期的Java最终项目,命名为"java-final-maven-javafx"。这个项目基于Java编程语言,使用Maven作为构建工具,并集成JavaFX库来创建图形用户界面。下面我们将...
标题“poi-bin-3.1-FINAL-20080629”指的是Apache POI项目的二进制发行版,版本为3.1-FINAL,发布日期为2008年6月29日。Apache POI是一个流行的开源Java库,它允许开发人员创建、修改和读取Microsoft Office格式的...
本项目"tuling-juc-final.zip"显然聚焦于Java并发编程的实践,通过一系列代码示例来演示和解释Java内存模型(JMM)、`synchronized`关键字以及`volatile`关键字的使用。下面我们将深入探讨这些核心概念。 Java内存...
Hibernate 是一个开源的对象关系映射(Object Relational Mapping,ORM)框架,它允许开发者将 Java 对象映射到数据库表,并支持多种数据库管理系统(Database Management Systems,DBMS)。Hibernate 3.5.0-Final ...
Apache POI是一个强大的开源库,它为Java开发者提供了读取和写入Microsoft Office格式文件的能力,尤其是Excel(.xlsx和.xls)文件。本文将深入探讨如何使用Apache POI 3.10-FINAL版本来解析Excel文件。 Apache POI...
标题中的"spring3.2+ Hibernate 3.5.4-Final+struts2 整合开发jar包"指的是一个软件开发项目中采用的技术栈,它涵盖了Spring框架的3.2版本、Hibernate ORM框架的3.5.4-Final版本以及Struts2 Web应用框架的2.3.20版本...
"final-final--final.rar_网络聊天"可能是一个包含了用于构建网络聊天应用的相关资源和代码的压缩包。在这个压缩包里,我们有两个文件:www.pudn.com.txt 和 final-final--final。下面将详细探讨网络聊天系统的基础...
**hibernate-distribution-3.5.0-Final-dist文档概述** Hibernate 是一个流行的开源对象关系映射(ORM)框架,它允许Java开发者在Java应用程序中操作数据库,而无需直接编写SQL语句。在Hibernate 3.5.0-Final版本中...
"poi-3.10-FINAL.jar"是Apache POI项目的特定版本,即3.10最终版,它包含了所有你需要在Java环境中读取、创建和修改这些文件所需的功能。 Apache POI的核心概念是HWPF(Horrible Word Processor Format)用于处理...
在Java编程环境中,有时我们需要处理RAR文件,例如读取、提取或查看RAR文件内容。`java-unrar-0.3.jar`是一个库,它允许Java开发者处理RAR文件,无需依赖外部命令行工具,如WinRAR。这个库为Java提供了一个简单易用...
《Java Servlet 3.1 规范》是中国Java开发者学习Servlet技术的重要参考资料,它详细阐述了Servlet 3.1版本中的...通过阅读和实践《servlet-3_1-final(中文版).doc》,开发者可以更好地掌握Java Web开发的核心技术。
这个是使用java导出Excel表格必备的jar包,后续会上传一片文章是关于这一块的