请教一下常量(literal)和变量的区别?那位朋友能深入说说?

13feng 2003-05-18 06:54:09
我在金山词霸查literal的解释为:
源程序中的一个符号或量,它本身是数据而不是对数据的引用。


如果这样:
final char s='a'

char s='a'

有什么区别吗?当然我知道常量定义后就不能赋值,其他的呢?

...全文
64 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
ajiao 2003-05-18
  • 打赏
  • 举报
回复
像你举的那个例子,你就不可以再把 s='c'
如果是一个reference,比如 final Object o=new Object("dd");
o指向的是一个对象的reference,她不可以改变,不可以 o=new Object("cc");这样子,可是
Object的内容却可以改变,比如通过 o.setXXX("KK"),下面这个例子也一样,尽管
j,k,o都指向同一个对象,可是一旦对final变量o赋值了,你就不可以在执行o=..这样的操作
Object j=new Object();
Object k=j;
final Object o=j; right
o=k; false

方法的final:使子类无法覆写
类的final:无法继承


62,628

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧