Java教程专栏:https://blog.csdn.net/qq_41806966/category_9929686.html
hello,I'm shendi
这节学习常量,关键字 final
目录
常量是什么?
我们在写程序的时候,可以使用变量来存数据.
那么,常量是什么呢?
常量就是一个变量,不同的是,这个变量无法被改变,称之为常量
“常量”的广义概念是:‘不变化的量’
为什么需要?
有的时候我们代码里难免会有一些不用修改的东西,我们可以将它定义为常量.
如果不定义成常量,别人使用我们的代码,就可以随意修改(这不是我们想要的预期结果)
一个变量如果没有任何人去修改,并且一直都没有去修改,也可以称为常量
如何使用?
通过 final 关键字修饰变量来将变量定义成常量
例如
- final int a;
- public final String a;
- public static final double c;
与 public 这种关键字一样,final关键字可以修饰在
- 类上
- 类属性上
- 类方法
- 不能修饰在方法里定义的变量上
修饰在类属性上
如同之前说的, 不可变的量.
- final int a = 0;
可以试一下定义,然后修改看看有什么效果
这里使用到了 Java9的工具,JShell
JShell 是一个java 控制台,方便我们进行一些测试等
使用方法如下(Java9才有), 输入jshell进入
然后我们可以直接输入代码,例如我们创建一个类,类里面有一个常量a
然后我们创建对应的对象,这个显示出了对象Hash码值试一下修改变量a
有了错误提示
我们输出一下,看看 a 有没有被修改,直接通过test.a来看到值
看得到a为1,我们也可以通过System...来进行输出
修饰在类和类方法上
之前针对变量来说很好理解
但是 final 关键字还可以修饰在类和方法上
修饰在类上和修饰在方法上主要代表不能被继承
继承还没有学,目前记住下就好了
我们经常使用的 String 类也是 final 的
- 使用在类上
- final class Test {}
- 使用在方法上
- final void test(){}
下一节将开始学习面向对象了