社区
Java SE
帖子详情
java中的final修饰属性时,是指内容不变还是引用不变?
xuxichun
2008-04-06 01:34:40
谁能从虚拟机的角度解释一下,谢谢:)
...全文
507
11
打赏
收藏
java中的final修饰属性时,是指内容不变还是引用不变?
谁能从虚拟机的角度解释一下,谢谢:)
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
gjgj3368
2008-04-06
打赏
举报
回复
[Quote=引用 1 楼 lingirl 的回复:]
当含有final属性的类被加载进内存并且被实例化的时候,就会为这个final属性分配内存,同时必须对该属性进行初始化,之后不可变。也就是说如果是基本类型的,那么它的值不能再改变;如果是对象,则引用不可变,而对象本身还是可以改变的
[/Quote]
正解
w111222j
2008-04-06
打赏
举报
回复
3楼说得很正确哦
x03640206
2008-04-06
打赏
举报
回复
final修饰基本类型的变量时,表示常量,修饰引用类型时表示对象变量的值不变,对象里面的内容可以改变。
hahalzx
2008-04-06
打赏
举报
回复
应该不会报错吧,默认是fianl了,你写出来也是一样了
抬头望远,低头沉思
2008-04-06
打赏
举报
回复
错误的,在接口中默认是final类型
istimeto
2008-04-06
打赏
举报
回复
接口中的成员变量默认的就是static final类型的,表示的是顶级的属性。不应该再加上final的。
xuxichun
2008-04-06
打赏
举报
回复
我还有一个问题,对于接口的定义
Interface A
{
final Obj b = new Obj("123");//大家觉得这行有错误么?为什么?
}
xuxichun
2008-04-06
打赏
举报
回复
楼上的各位解释的很好,谢谢:)
老紫竹
2008-04-06
打赏
举报
回复
[Quote=引用 1 楼 lingirl 的回复:]
当含有final属性的类被加载进内存并且被实例化的时候,就会为这个final属性分配内存,同时必须对该属性进行初始化,之后不可变。也就是说如果是基本类型的,那么它的值不能再改变;如果是对象,则引用不可变,而对象本身还是可以改变的
[/Quote]
说的很清楚了!
final int id = 1; // 基本类型,不可改变
final Object obj = new Object(); // 则引用不可改变,但 obj里面的属性可以改变!
ai_longer
2008-04-06
打赏
举报
回复
说的不太清哦,二楼,能不能说清一点哦
lingirl
2008-04-06
打赏
举报
回复
当含有final属性的类被加载进内存并且被实例化的时候,就会为这个final属性分配内存,同时必须对该属性进行初始化,之后不可变。也就是说如果是基本类型的,那么它的值不能再改变;如果是对象,则引用不可变,而对象本身还是可以改变的
零基础
Java
入门课程
Java
入门
Java
的历史、
Java
的版本、
Java
的优势、软件行业前景
Java
开发环境搭建、编写
Java
入门练习 虚拟机的运行机制、
Java
的平台无关性、虚拟机垃圾回收机制 基础语法 关键字、标识符、
Java
数据类型分类、基础数据...
Java
中
Final
修饰
一个变量
时
,是
引用
不能变还是
引用
的对象不能变
Java
中
,使用
Final
修饰
一个变量,是
引用
不能变,还是
引用
对象不能变? 是
引用
对象的地址不能变,
引用
变量所
指
的对象的
内容
可以改变。
final
变量永远
指
向这个对象,是一个常量
指
针,而不是
指
向常量的
指
针。 比如:
final
StringBuffer sb=new StringBuffer(“abc”); 对sb重新赋值 sb=new StringBuffer(“cde”); 会出现编译错误,被
final
修饰
的变量是不能重新赋值的; 但是 sb.append(“ced”); 是可以编译通过的。 F
java
final
修饰
的数组_
Java
基于
final
修饰
数据过程解析
这篇文章主要介绍了
Java
基于
final
修饰
数据过程解析,文
中
通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
final
是
Java
中
的一个重要关键字,它可以
修饰
数据、方法和类,本篇将从
final
修饰
的数据角度对
final
做出总结。
final
修饰
的数据代表着:永远
不变
。意思是,一旦你用
final
修饰
一块数据,你之后就只能看看它,你想修改它,没门。我们不希望...
JAVA
中
final
修饰
参数
1、
final
修饰
在变量上,说明这个变量的值不能修改
final
修饰
在方法上,说明这个方法在继承后不能覆盖.
final
修饰
在类上,说明这个类为终态,不能被继承了. 2、
final
类型
修饰
的参数分为两种类型:基本类型 与
引用
类型 参考:http://www.cnblogs.com/lan0725/archive/2013/05/24/3097573.html (1) 在调用......
Java SE
62,614
社区成员
307,327
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章