例:
final String s = “aaa”;
final Map map = new HashMap()

 s = "bbb";map.put("aa","111");

结果是s报错,map成功运行。

fianl的特性是:
final修饰的类不能被继承;
final就是的方法不能被重写,可以被重载。
final修饰的变量不可修改。

到这里是没有毛病的,但是为什么map就可以修改呢?
这里我在网上查阅了一些博客,资料说的是final修饰的变量不可被修改说的是 引用 不可被修改。

像String类型的变量本身的值是不可变得。修改String变量的值就是修改引用,直接执行另一个内存地址了。即改变了引用,和final冲突。
而map集合就不一样了,map集合进行内容操作时,只是在内存中修改值,并没有重新指向新的地址,所以使用fianl修饰就算对map进行操作也没有报错。

ps:重写和重载的区别
1.重写必百须继承,重载不用。
2.重写的方法名,参数数目相同,参数类型兼度容,重载的方法名相同,参数列表不同
3.重写的知方法修饰道符大于等于父类的方法,重载内和修饰符无关。
4.重写不可以抛出父类没有抛出的一般异常容,可以抛出运行时异常

final修饰的Map集合可以被修改相关推荐

  1. 用final修饰的HashMap,到底可不可以修改??

    写在前面 我们都知道,final修饰的类不能被继承.修饰的方法不能被重写(可以被重载).修饰的变量不能被修改. 那么,final修饰的HashMap到底能不能修改????? 实例 public sta ...

  2. 怎么确保一个集合不能被修改?

    我们很容易想到用final关键字进行修饰,我们都知道final关键字可以修饰类,方法,成员变量,final修饰的类不能被继承,final修饰的方法不能被重写,final修饰的成员变量必须初始化值,如果 ...

  3. 怎么确保一个集合不能被修改

    集合(map,set,list)都是引用类型,所以我们如果用final修饰的话,集合里面的内容还是可以修改的. 可以使用 Collections. unmodifiableCollection(Col ...

  4. Scala集合:Map集合

    Map遍历及+增加数据 Map集合默认不可变 可变Map集合 -删除数据 修改数据 空指针问题 总结

  5. Scala:Map集合的使用

    1.声明 当前内容主要用于本人学习和复习,当前内容为使用和测试Map集合 当前内容借鉴:菜鸟教程 Map集合存在两种 可修改的Map:scala.collection.mutable.Map 不可修改 ...

  6. Hibernate 的Set、List、Map集合操作(添加,修改,查询)

    首先配置User.hbm.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hiber ...

  7. java中map集合的修改_map集合修改其中元素(示例代码)

    packagecom.swift.lianxi;importjava.util.HashMap;importjava.util.Iterator;importjava.util.Map;importj ...

  8. List Set Map 集合不可修改

    怎么确保一个集合不能被修改? 使用 JDK中java.util.Collections 类,unmodifiable*** 方法赋值原集合. 当再修改集合时,会报错java.lang.Unsuppor ...

  9. 被final修饰的部分变量后依然可以被修改

    技术探究: 被final修饰的 变量可以被修改吗 ? 在java的学习中,从刚接触final这个关键词时,就被告知: ------"被final修饰的变量只能一次赋值,以后不能被修改,即常量 ...

最新文章

  1. WPF TabControl Unload俩次的解决方案
  2. spo2数据集_Arduino 血氧心率模块传感器数据采集
  3. ios序列化与反序列化,本地化
  4. DB2数据库报 [SQL0805N Package NULLID.SQLLD003 was not found.]
  5. Spring MVC,Thymeleaf,Spring Security应用程序中的CSRF保护
  6. python蒙特卡洛模拟_基于Python的21点游戏蒙特卡洛模拟
  7. suse11安装python_suse linux 安装python Eric4
  8. 【华为云技术分享】小白学YOLO:一文带你学YOLOv1 Testing
  9. Java实训项目:GUI学生信息管理系统(2017)
  10. 【IDEA】idea 运行测试类报错 Failed to resolve org.junit.platform:junit-platform-launcher:1.5.2
  11. c语言写的心理测试,写了个心理测试的c程序(*^__^*) 嘻嘻……
  12. Log4j和Slf4j的比较
  13. web一键返回顶端html代码,CSS-返回顶部代码_html/css_WEB-ITnose
  14. powerbuilder mysql_powerbuilder+mysql5.0的连接过程 | 学步园
  15. Java + OpenCV 实现图片人脸检测
  16. Jenkins--下载安装及简单配置
  17. 【百度图片】怎么让百度收录图片
  18. LT8618SX寄存器配置
  19. java中Joiner的使用笔记
  20. Editor: 维护一个整数编辑器 HDOJ4699

热门文章

  1. KDE桌面|添加自定义快捷键
  2. 互联网行业产品经理(PM)的月薪一般是多少?
  3. 法兰克oitf操作_FANUC 系列操作面板各按键
  4. 用DirectX Audio和DirectShow播放声音和音乐
  5. 【Python技巧】将jfif文件处理为jpg文件
  6. 无人机——遥控器篇(三)
  7. [Paper Reading] Dynamo: Amazon‘s Highly Available Key-value Store
  8. java高并发递增编号_java 高并发 订单编号递增(解决方案)
  9. python3.6安装scrapy出错_python3.6安装scrapy
  10. A的伴随矩阵的伴随矩阵