Java 中的线程安全的类

  • 3 个线程安全的类
  • 它们对应的非线程安全的类
  • 它们延伸的类
  • 其它
    • 它们对应的非线程安全的类

3 个线程安全的类

  Java 中的 3 个基本的线程安全的类为:Hashtable(不是 HashTable)、StringBuffer、Vector。

  Hashtable 这个类名看起来不符合命名规范。确实如此!那为什么会这样呢?这是因为类 Hashtable 在 JDK1.0 就已经有了(参见 https://docs.oracle.com/javase/7/docs/api/java/util/Hashtable.html )。在那个年代,命名不规范也很好理解。于是,由于历史原因,Hashtable 中的 t 一直都是小写的。

它们对应的非线程安全的类

  • Hashtable:HashMap

  • StringBuffer:StringBuilder

  • Vector:ArrayList

它们延伸的类

  • Hashtable:

    • 待补充
  • StringBuffer:

    • 待补充
  • Vector:

    • Stack

其它

它们对应的非线程安全的类

  • ThreadLocalRandom:Random

Java 中的线程安全的类相关推荐

  1. 关于Java中的线程安全(线程同步)

    java中的线程安全是什么:就是线程同步的意思,就是当一个程序对一个线程安全的方法或者语句进行访问的时候,其他的不能再对他进行操作了,必须等到这次访问结束以后才能对这个线程安全的方法进行访问 什么叫线 ...

  2. 不允许使用java方式启动_细品 Java 中启动线程的正确和错误方式

    细品 Java 中启动线程的正确和错误方式 前文回顾详细分析 Java 中实现多线程的方法有几种?(从本质上出发) start 方法和 run 方法的比较 代码演示:/** * * start() 和 ...

  3. java面试题27 java中下面哪些是Object类的方法()

    java面试题27 java中下面哪些是Object类的方法() A notify() B notifyAll() C sleep() D wait() 蒙蔽树上蒙蔽果,蒙蔽树下你和我.遇到这种题,我 ...

  4. jAvA中deprecate,在Java中使用Deprecated方法或类是错误的吗?

    1.在Java中使用Deprecated方法或类是错误的吗? 从已弃用的定义 : 注释@Deprecated的程序元素是程序员不鼓励使用的程序元素,通常是因为它是危险的,或者是因为存在更好的selec ...

  5. 如何在java中实现线程_用代码说话:如何在Java中实现线程

    并发编程是Java语言的重要特性之一,"如何在Java中实现线程"是学习并发编程的入门知识,也是Java工程师面试必备的基础知识.本文从线程说起,然后用代码说明如何在Java中实现 ...

  6. Java中一个线程只有六个状态。至于阻塞、可运行、挂起状态都是人们为了便于理解,自己加上去的。...

    java中,线程的状态使用一个枚举类型来描述的.这个枚举一共有6个值: NEW(新建).RUNNABLE(运行).BLOCKED(锁池).TIMED_WAITING(定时等待).WAITING(等待) ...

  7. 万字图文 | 学会Java中的线程池,这一篇也许就够了!

    来源:一枝花算不算浪漫 线程池原理思维导图.png 前言 Java中的线程池已经不是什么神秘的技术了,相信在看的读者在项目中也都有使用过.关于线程池的文章也是数不胜数,我们站在巨人的肩膀上来再次梳理一 ...

  8. Java多线程编程(1)--Java中的线程

    一.程序.进程和线程   程序是一组指令的有序集合,也可以将其通俗地理解为若干行代码.它本身没有任何运行的含义,它只是一个静态的实体,它可能只是一个单纯的文本文件,也有可能是经过编译之后生成的可执行文 ...

  9. java中线程的生命周期_Java中的线程生命周期– Java中的线程状态

    java中线程的生命周期 Understanding Thread Life Cycle in Java and Thread States are very important when you a ...

最新文章

  1. UITesting Bundle使用
  2. 正点原子串口函数分析
  3. 【机器视觉】 dev_open_file_dialog算子
  4. Mysql Group by 分组取最小的实现方法
  5. rm命令改为移动到回收站
  6. android p dp5,谷歌释出Android P第5个开发者预览版更新!
  7. ubuntu 12.04 mysql_ubuntu12.04 安装和卸载mysql
  8. python/selenium/chrome
  9. 1650显卡和1050T显卡差距大吗?
  10. 【SCOI2005】【BZOJ1083】繁忙的都市(MST模板)
  11. spring加载jar包中多个配置文件
  12. java人员工作建议_给JAVA设计开发新手的一些建议和意见(1)
  13. 存储,对比私有云和公有云的不同
  14. “打开文件所在位置”提示“找不到应用程序”的解决方案
  15. css 语音,CSS3新特性一览-- 语音
  16. 自我健康检测及产品应用方案
  17. AMD移动双显卡驱动14.4_WHQL正式版64位_byTimer0677
  18. Ftp服务器架设与客户端使用--FileZilla
  19. 中国5G套餐用户规模已超5000万!
  20. 全球首发特性,goproxy.io 支持海外私有库代理了

热门文章

  1. css实现浏览历史小块
  2. 大数据正在改变汽车行业的5种方式
  3. CF983B XOR-pyramid
  4. Winform 自定义窗体皮肤组件
  5. Django Channels 入门指南
  6. 分布式缓存memcached
  7. ABP(现代ASP.NET样板开发框架)系列之2、ABP入门教程
  8. The Code Commandments: Best Practices for OCCoding
  9. LightOJ 1269 Consecutive Sum (Trie树)
  10. Brocade NOS学习笔记(第一章——第三章)