`
zwhc
  • 浏览: 266003 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

java final parameter

    博客分类:
  • java
阅读更多
一些代码里,参数前加了 final 修饰符,不太明白这样做的原因,
用google 搜索: java final "parameter" site:jcp.org
得到这个内容。先存个档,以后仔细看。

http://jcp.org/aboutJava/communityprocess/maintenance/JLS/innerclasses.pdf

Note the final declaration. Local final variables such as array are a new
feature in 1.1. In fact, if a local variable or parameter in one class is referred to
by another (inner) class, it must be declared final. Because of potential
synchronization problems, there is by design no way for two objects to share
access to a changeable local variable. The state variable count could not be
coded as a local variable, unless perhaps it were changed a one-element array:

Enumeration myEnumerate(final Object array[]) {
final int count[] = {0}; // final reference to mutable array
class E implements Enumeration {
public boolean hasMoreElements()
{ return count[0] < array.length; } ...


(Sometimes the combination of inheritance and lexical scoping can be
confusing. For example, if the class E inherited a field named array from
Enumeration, the field would hide the parameter of the same name in the
enclosing scope. To prevent ambiguity in such cases, Java 1.1 allows inherited
names to hide ones defined in enclosing block or class scopes, but prohibits
them from being used without explicit qualification.)
分享到:
评论

相关推荐

    c# 和java 不同点

    `,而 Java 中声明常量使用 `final` 关键字,例如 `final int pi=3;`。 6. checked 和 unchecked 语句 C# 中有 `checked` 和 `unchecked` 语句,用于控制溢出检查,而 Java 中没有这两个语句。 7. 使用语句 C# ...

    java 实现上传文件到远程服务器

    ### Java 实现上传文件到远程服务器(Spring MVC) 在现代软件开发中,文件上传功能是十分常见的需求之一,尤其在Web应用中。本篇文章将详细介绍如何利用Java编程语言结合Spring MVC框架来实现文件的远程上传功能。...

    JAVA入门1.2.3:一个老鸟的JAVA学习心得 PART1(共3个)

    7.2.4 参数列表(Parameter List) 159 7.2.5 方法体(Method Body) 160 7.2.6 方法串串烧 160 7.3 方法的参数:让汽车加速 161 7.3.1 方法的参数:让汽车可以加速 161 7.3.2 带参数的方法有何不同? 162 ...

    java代码静态检测规则

    ### ClassType(Generic) Parameter Name Check (checkstyle:com.puppycrawl.tools.checkstyle.checks.naming.ClassTypeParameterNameCheck) #### 规则描述: 该规则检查类参数名称是否符合指定的格式。例如,可以...

    Java入门1·2·3:一个老鸟的Java学习心得.PART3(共3个)

    7.2.4 参数列表(Parameter List) 159 7.2.5 方法体(Method Body) 160 7.2.6 方法串串烧 160 7.3 方法的参数:让汽车加速 161 7.3.1 方法的参数:让汽车可以加速 161 7.3.2 带参数的方法有何不同? 162 ...

    Java 语言基础 —— 非常符合中国人习惯的Java基础教程手册

     final 说明一个类为最终类,即改类不能再有子类。  public 说明类为公共类,该类可以被当前包以外的类和对象使用。  private 说明类为私有类。 (4) extends 子句用于说明类的直接超类。 (5) implements ...

    JAVA英语单词(带音标).

    - **['veərɪəb(ə)l][ɒpə'reɪʃ(ə)n][pə'ræmɪtə]**:变量(Variable)、操作(Operation)、参数(Parameter)。 - **['fʌŋ(k)ʃ(ə)n]**:函数(Function),在程序中执行特定任务的一段代码。 - **...

    Java语言程序设计实验指导电子学习教案.pptx

    Java语言程序设计实验指导主要涵盖了面向对象编程的关键概念,特别是继承、super关键字的使用以及final关键字的应用。在Java中,继承是实现代码复用和构建类层次结构的基础。以下是详细的知识点解析: **继承机制**...

    Java的考试复习资料整理

    - 构造方法:`public ClassName(ParameterList) { ... }` - **this关键字**: - 表示当前对象自身引用。 - 可用于访问本类中的成员变量或方法。 - **null与默认值**: - `null`表示对象未被实例化。 - 基本...

    从一个class文件深入理解Java字节码结构

    附加属性表提供额外信息,如`Code`属性包含了方法的实际字节码,`Exceptions`属性记录了可能抛出的异常,`Annotations`和`ParameterAnnotations`记录了注解信息。 通过深入了解这些结构,开发者可以更好地理解Java...

    java必记单词

    ### Java 必记单词解析 #### AbstractWindowToolkit (AWT) 抽象窗口工具包 - **定义**:AWT 是 Java 提供的一组用于创建图形用户界面 (GUI) 的类库,它允许开发者创建独立于操作系统的窗口、按钮、菜单等控件。 - *...

    java webservice axis2简单开发实例.docx

    文档中提到使用的是1.4 final版本。可以通过以下链接下载所需的JAR包:[http://ws.apache.org/axis/](http://ws.apache.org/axis/)。下载完成后,将这些JAR包放置在项目的lib文件夹下。 2. **设置开发环境** 在本...

    java精华总结

    public returnType methodName([parameter list]) { // method body } ``` ##### 3. 方法里的属性 方法中的属性指的是方法参数和方法体内的局部变量。 ##### 4. 方法特点 - 可以重用代码。 - 提高程序的可维护...

    Java高级语言相关词汇.doc

    28. `parameter`:参数,传递给方法或构造函数的值。 29. `document`:文档,通常指的是API文档或源代码注释。 30. `array`:数组,存储同类型元素的集合。 31. `sort`:排序,对数组或列表进行升序或降序排列。 32....

    Java基础常见英语词汇

    - **参数**(Parameter):方法调用时传递给方法的值。 - **方法**(Method):一段完成特定功能的代码块。 - **函数**(Function):与方法类似,在某些语言中用法相同,在Java中通常称为方法。 #### 三、访问修饰...

    JAVA代码编程规范

    静态终态字段(Static Final Field)** 此类字段名需明确其含义,常用名词、名词短语或限定性形容词/副词,单一单词全大写,多词时以下划线连接,每个词大写,如`NAME`、`HORIZONTAL`、`USER_NAME`、`SCROLLBARS_...

    java常用单词

    ### Java基础常见英语词汇解析 #### 面向对象 (OO: object-oriented) 面向对象是一种编程范式,它将程序中的各种元素组织成对象。在Java中,几乎所有的东西都是对象。 #### 面向对象编程 (OOP: object-oriented ...

    Java软件开发实战 Java基础与案例开发详解 15-4 练习题 共5页.pdf

    - 常量是在程序运行过程中不会改变其值的量,可以通过`final`关键字声明。 - **运算符与表达式**: - 运算符包括算术运算符、比较运算符、逻辑运算符等。 - 表达式是由变量、常量、运算符组成的组合,可以产生一...

Global site tag (gtag.js) - Google Analytics