标签:计算 安全 多线程安全 hashmap 线程安全 ring nal shm ati
标签(空格分隔): Java
如题
字符串是不可变的, 所以是多线程安全的, 同一个字符串可以被多个线程共享. 这样便不用因为线程安全问题而使用同步(牵扯到Volatile关键字). 字符串自己便是线程安全的.
数据库的用户名,密码都是以字符串的形式传入来获得数据库的链接, 或者在Socket编程中, 主机的主机名和端口都是以字符串的形式传入的, 因为字符串是不可变的, 所以值是不可变的, 否则黑客可以改变字符串指向的对象的值, 造成安全漏洞. (非安全专业, 但是这种东西 还是和纸糊的墙差的不).
字符串是不可变的, 所以他在创建的时候HashCode就被缓存了, 不需要重新计算, 这就使得字符串很适合作为Map中的键, 字符串的处理速度也要快过其他键的对象. 所以HashMap中的键一般都是字符串.
‘‘‘
‘‘‘
标签:计算 安全 多线程安全 hashmap 线程安全 ring nal shm ati
原文地址:https://www.cnblogs.com/A-FM/p/14819173.html