当前位置:网站首页>请你说一下final关键字以及static关键字
请你说一下final关键字以及static关键字
2022-08-04 22:52:00 【去扰嶟】
final关键字
final关键字可以用来修饰类、变量、方法,标志不可变。
修饰类时类是不可继承的,比如String类
修饰方法时其是可继承、但不可重写的,如果不想让哪个方法被重写,就可以使用final来修饰
当final用来修饰变量时,代表该变量不可被改变,一旦获取了初始值,就不能被重新赋值。修饰变量可以是成员变量(类变量、实例变量)、局部变量和形参,修饰成员变量时,要在初始化或代码块或构造器中声明其值,且一旦声明后不可再改,如果没有声明的话,它的值就是默认的值(0,‘\u0000’,false或者是null),这样这个变量就失去了存在的意义。所以Java语法规定在使用final修饰成员变量时,必须要程序员显示指定初始值。修饰类变量时,要在初始化或静态代码块中声明其值,不能在普通代码块中或构造器声明。修饰实例变量时,要在初始化或普通代码块中或构造器中声明其值。不能在静态代码块中声明。系统不会为局部变量进行初始化所以局部变量必须由程序员显式的初始化。当final修饰局部变量在定义时没有指定默认值,可以在后面的代码中对该final变量赋初始值,但只能一次,不能重复赋值;如果final修饰局部变量在定义时已经指定默认值,则后面的代码不能再对该变量赋值。
static关键字
static可以修饰变量、方法、代码块、内部类
修饰变量时,说明变量是独立于对象的静态变量,无论类实例化多少个对象,这个变量只有一份,成为类变量,所有类实例变量共享,如果一个类实例变量改变其值,所有的是实例变量调用的都是改变后的值。可以通过类.类变量的方式调用。
修饰方法时,为静态方法,方法随着类的加载而加载,只加载一次。可以通过类.静态方法的方式调用。
修饰代码块,则为静态代码块,随着类的加载而加载,只加载一次。
修饰内部类,则为静态内部类,它是当调用的时候加载和初始化,只加载一次。
边栏推荐
猜你喜欢
随机推荐
2022年全网最全接口自动化测试框架搭建,没有之一
使用cpolar优化树莓派上的网页(1)
[Mock Interview - 10 Years of Work] Are more projects an advantage?
最温馨的家园
MySQL的JSON 数据类型1
the warmest home
Use ngrok to optimize web pages on raspberry pi (1)
【游戏建模模型制作全流程】使用ZBrush制作骷髅王
SQL Server 调用 WebService
后排乘客不系安全带?事故瞬间被甩出
VC bmp文件总结
PAN3020 Sub-1G无线收发芯片
轮播图动态渲染
一点点读懂regulator(二)
xss总结
【3D建模制作技巧分享】ZBrush模型制作流程:地精
DREAMWEAVER8 部分问题解决方案
PHP(3)
【项目实战】仿照Room实现简单管理系统
线上虚拟展馆展示具有哪些优势