我们都知道Java中final关键字的用法:
- 被fiinal修饰的类不能被继承。
- 被final修饰的方法不能被重写。
- 被final修饰的变量不能被修改。
然而,被final修饰的变量不能被修改,这个怎么理解呢,是变量的值不能被修改,还是引用不能被修改呢,引用的对象可以被修改吗,我们来看代码:
package com.yuwl.jdk; /** * 测试内容:final修饰变量 * @author Yuwl * 2018-3-18 */ public class FinalTest { private final int one = 1; private final Value two = new Value(2); private final int[] array = new int[]{1,2,3,4}; public static void main(String[] args) { FinalTest ft = new FinalTest(); //ft.one = 2; //被final修饰的变量值不能更改,编译报错 Value v3 = new Value(3); //ft.two = v3; //被final修饰的引用不能更改,编译报错 int n = ft.two.setValue(3); //被final修饰的引用不能更改,但引用的对象内容可以修改 int[] array2 = new int[]{1,2,3,4,5}; //array = array2; //被final修饰的数组引用不能更改,编译报错 ft.array[1] = 5; //被final修饰的数组引用不能更改,但引用的数组内容可以修改 } } class Value { private int i; public Value(int i) { this.i = i; } public int setValue(int num) { this.i = num; return this.i; } }
通过以上代码测试,可以总结:被final修饰的变量值,引用不能修改,但引用的对象可以被修改。
相关推荐
在Java中,final关键字可以用来修饰类、方法和变量(包括成员变量和局部变量)。下面就从这三个方面来了解一下final关键字的基本用法。 1.修饰类 当用final修饰一个类时,表明这个类不能被继承。也就是说,...
内容概要: 本文介绍了Java中final关键字的概念和用法。读者将学习什么是final关键字,为什么需要使用final,以及在不同场景下如何使用final关键字。此外,还会讨论final关键字的一些注意事项和规则。 能学到什么:...
Java中的final关键字可以被用来修饰变量、方法和类等,意味着终结、不可改变,下面我们就来举例讲解Java中final关键字的用法:
根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类、非抽象类成员方法和变量。你可能出于两种理解而需要阻止改变:设计或效率。
在Java中, 可以使用final关键字修饰类、方法以及成员变量。 (1).final标记的类不能被继承; (2).final标记的方法不能被子类复写; (3).final标记的变量即成为常量,只能被赋值一次. 注意: 如果使用final来...
在Java中,final可以别用来修饰类、修饰方法、修饰变量和修饰参数等,这里就来简单作一个Java中final关键字的用法总结:
带你深入理解Java中的final关键字_动力节点Java学院整理.
Java final关键字的学习demo
Java中的final关键字非常重要,它可以应用于类、方法以及变量。这篇文章中带你看看什么是final关键字?将变量,方法和类声明为final代表了什么?使用final的好处是什么?最后也有一些使用final关键字的实例
主要给大家介绍了关于Java中final关键字的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者使用Java具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
22.final关键字.zip22.final关键字.zip22.final关键字.zip22.final关键字.zip22.final关键字.zip22.final关键字.zip22.final关键字.zip22.final关键字.zip22.final关键字.zip22.final关键字.zip22.final关键字.zip22...
主要给大家介绍了关于Java中final关键字的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Java具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
主要介绍了Java中final关键字详解及实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
Java中的final关键字 1、修饰类的成员变量 这是final的主要用途之一,和C/C++的const,即该成员被修饰为常量,意味着不可修改。 上面的代码对age进行初始化后就不可再次赋值,否则编译时会报类似上图的错误。 ...
final关键字代表着最后、不可改变,无论是在用final修饰类、修饰方法还是修饰变量时,都要注意内存分配的问题.这里来小议Java中final关键字使用时的注意点:
final关键字正如其字面意思一样,意味着最后,比如被final修饰后类不能集成、变量不能被再赋值等,以下我们就来深入解析Java编程中final关键字的作用:
java中的final关键字是用来限制用户的。java final 关键字可以在许多上下文中使用