java,final修饰引用类型?

怎么理解:final修饰引用类型,是引用不能改变,而引用指向的内容是可以改变的。请举个代码的例子。谢谢。... 怎么理解:final修饰引用类型,是引用不能改变,而引用指向的内容是可以改变的。
请举个代码的例子。谢谢。
展开
 我来答 举报
553722769
2009-10-17 · 超过20用户采纳过TA的回答
知道答主
回答量:48
采纳率:0%
帮助的人:0
展开全部
final修饰的引用类型,引用不可以改变,但是它所指向的对象的内容可以改变

看下面的例子,stu1的指向是不可以改变的,但对象的信息我们可以改变

public class FinalEx
{
public static void main(String args[])
{
final Student stu1=new Student(22,"Tom");
Student stu2=new Student(25,"Jerry");
//stu1=stu2;//出错,stu1指向的是new Student(22,"Tom")对象,不能改变
System.out.println("stu1的name:"+stu1.sname+" stu1的age:"+stu1.sage);
stu1.setSname("Jerry");
stu1.setSage(25);
System.out.println("stu1的name:"+stu1.sname+" stu1的age:"+stu1.sage);//这是stu1指向的对象发生了改变
}
}
class Student
{
String sname;
int sage;
public Student(int sage,String sname)
{
this.sage=sage;
this.sname=sname;
}
public void setSname(String sname)
{
this.sname=sname;
}
public void setSage(int sage)
{
this.sage=sage;
}
}
chzhq0518
2009-10-17 · TA获得超过251个赞
知道小有建树答主
回答量:305
采纳率:0%
帮助的人:0
展开全部
final String a="df";
a="dff";//这时a指向另一个对象了 也就是引用改变了 a被final修饰 所以肯定出现错了
要把final 去掉了 就可以通过了
2 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
ssh99999ssh
2009-10-17 · TA获得超过389个赞
知道小有建树答主
回答量:719
采纳率:50%
帮助的人:259万
展开全部
就是说引用变量的地址不变,而它指向的内容可以改变
5 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式