为了账号安全,请及时绑定邮箱和手机立即绑定

为什么List<Student> students = new ArrayList<>();添加了final后就不报错了?

好像Java基础里没有这一个说法啊,回调里面可以访问final修饰的变量而不能访问普通的变量

正在回答

2 回答

final:所修饰的变量不可更改。内部类引用外部类的变量时用final:简单理解就是,拷贝引用,为了避免引用值发生改变,例如被外部类的方法修改等,而导致内部类得到的值不一致,于是用final来让该引用不可改变。

1 回复 有任何疑惑可以回复我~

因为刚才写里面new 了一个内部类,在哪个内部类中写方法的实现了,导致这个变量必须是final 才能在里面使用,平时咱们使用的时候都不用final 对吧。

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么List<Student> students = new ArrayList<>();添加了final后就不报错了?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信