final与static的区别

final与static的区别

这两个关键字到底有什么区别?是强调只有一个吗?老是混淆

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
一叶知秋519 2017-09-07 10:02:57

static是静态修饰关键字,可以修饰变量和程序块以及类方法:

当定义一个static的变量的时候jvm会将将其分配在内存堆上,所有程序对它的引用都会指向这一个地址而不会重新分配内存;

当修饰一个程序块的时候(也就是直接将代码写在static{...}中)时候,虚拟机就会优先加载静态块中代码;

当修饰一个方法时候,就表示该方法是类方法,可以直接通过类来调用而不需要新建对象。

final可以修饰变量、方法及类,

当定义一个final变量时,jvm会将其分配到常量池中,程序不可改变其值,可以把final定义的变量理解为常量;

当你定义一个方法时,该方法在子类中将不能被重写;

当你修饰一个类时,则表示该类不能被继承。

祝学习愉快~

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师