- Map
VirtualBool
java学习java
Map是Java中用于存储键值对的集合接口。以下是对Map的详细介绍:特点键值对存储:每个元素包含一个键和一个值。键唯一:键不能重复,但值可以重复。无序/有序:根据具体实现,键值对的顺序可能无序(如HashMap)或有序(如TreeMap、LinkedHashMap)。主要实现类HashMap基于哈希表,无序存储。允许一个null键和多个null值。LinkedHashMap继承自HashMap,
- android pdf框架-8,图片缓存
archko
pdfpdfandroid
解码会产生很多图片,滑过后不要显示,如果直接回收,会浪费不少资源.在没有缓存的情况下,会看到gc还是比较频繁的.有了缓存后,明显gc少了.目录常用的缓存自定义缓存显示相关的内存缓存解码缓存池内存缓存实现:解码缓存池实现:常用的缓存lrucache,这是最常用的,也是androidsdk里面有的.就是按访问时间顺序,内部使用linkedhashmap,会记录访问时间.androidx.core.ut
- LinkedHashMap源码简读
tinyvampirepudg
LinkedHashMap源码简读1、LinkedHashMap继承自HashMap,HashMap具有的特性它都具有。2、实际上,LinkedHashMap是通过双向链表和散列表这两种数据组合实现的。LinkedHashMap中的“Linked”实际上指的是双向链表,并非指“用链表法解决散列冲突”。3、LinkedHashMap不仅支持按照插入顺序遍历数据,还支持按照访问顺序来遍历数据。通过设置
- 集合进阶(双列集合、HashMap、LinkedHashMap、TreeMap、Collections)
小琪爱学习
Java黑马java开发语言
目录一、双列集合1、双列集合的特点2、双列集合的常见API3、Map的遍历方式3.1第一种遍历方式:键找值(keySet)3.2第二种遍历方式:键值对(entrySet)Entry:键值对对象3.3第三种遍历方式:Lambda表达式(forEach)二、HsahMap集合1、HashMap的特点2、HashMap的底层原理3、小结4、HashMap练习4.1存储学生对象并遍历4.2Map集合案例-
- TreeMap就这么简单【源码剖析】
Java3y
前言声明,本文用得是jdk1.8前面章节回顾:Collection总览List集合就这么简单【源码剖析】Map集合、散列表、红黑树介绍HashMap就是这么简单【源码剖析】LinkedHashMap就这么简单【源码剖析】本篇主要讲解TreeMap~看这篇文章之前最好是有点数据结构的基础:Java实现单向链表栈和队列就是这么简单二叉树就这么简单当然了,如果讲得有错的地方还请大家多多包涵并不吝在评论去
- 【视频】互联网Java工程师面试突击训练(三季)
后端
视频下载地址https://pan.quark.cn/s/2c7e785e3500目录一、Java集合包HashMap的底层数据结构是什么?JDK1.8中对hash算法和寻址算法是如何优化的?03.HashMap是如何解决hash碰撞问题的?04.说说HashMap是如何进行扩容的?05.ArrayList,LinkedList,TreeMap,LinkedHashMap,HashSet等底层的数
- 【集合系列】LinkedHashMap 集合
酷小洋
#Java基础语法java开发语言b树
LinkedHashMap集合1.概述2.方法3.遍历方式4.代码示例5.注意事项其他集合类祖父类Map父类HashMap集合类的遍历方式具体信息请查看API帮助文档1.概述LinkedHashMap是Java中的一种特殊类型的HashMap,它继承自HashMap类,并实现了Map接口。它是一个有序的集合,它保留了元素插入的顺序,并且允许使用它们的插入顺序进行迭代。与普通的HashMap不同,L
- 【集合系列】HashMap 集合
酷小洋
#Java基础语法java开发语言
HashMap集合1.概述2.方法3.遍历方式4.代码示例15.代码示例26.注意事项7.源码分析其他集合类父类Map实现类LinkedHashMap集合类的遍历方式具体信息请查看API帮助文档1.概述HashMap是Java中的一种集合类,它实现了Map接口。HashMap使用键值对存储数据,每个键值对被称为一个Entry(条目)。HashMap使用哈希表来存储数据,因此能够在O(1)时间复杂度
- 【链表】-Lc146-实现LRU(巧妙借助LinkedHashMap)
宝总.
数据结构与算法链表java数据结构
写在前面 最近想复习一下数据结构与算法相关的内容,找一些题来做一做。如有更好思路,欢迎指正。目录写在前面一、场景描述二、具体步骤1.环境说明2.代码写在后面一、场景描述 运用你所掌握的数据结构,设计和实现一个LRU(LeastRecentlyUsed,最近最少使用)缓存机制。它应该支持以下操作,获取数据get和写入数据put。1、获取数据get(key),如果密钥(key)存在于缓存中,则获取
- java Map集合相关介绍和方法使用操作
酷爱码
java技术教程java开发语言
Java的Map集合是存储键值对的一种数据结构。在Map中,每个键都是唯一的,用来标识该键值对。Map接口是java.util包中的一部分,它有多个实现类,包括HashMap,TreeMap,LinkedHashMap等。下面是Map接口的一些常用方法:put(key,value):向Map中插入一个键值对。get(key):根据键获取对应的值。containsKey(key):判断Map中是否存
- lambda表达式LinkedHashMap::new和Collectors.mapping讲解
爱吃土豆的马铃薯ㅤㅤㅤㅤㅤㅤㅤㅤㅤ
java
List>>result=list.stream().collect(Collectors.groupingBy(ReviewRecord::getNodeType,LinkedHashMap::new,Collectors.mapping(Function.identity(),Collectors.toList()))).entrySet().stream().collect(Collecto
- 大模型: OpenAi流式会话报错【org.springframework.http.converter.HttpMessageNotWritableException: No converter 】
玉成226
【大模型】ai
文章目录一、背景二、解決方案一、背景使用OkHttpClient-sse流式会话报如下错误信息Resolved[org.springframework.http.converter.HttpMessageNotWritableException:Noconverterfor[classjava.util.LinkedHashMap]withpresetContent-Type'text/event
- Java基础 LinkedHashMap
一名技术极客
java相关随笔javaLinkedHashMap
LinkedHashMapLinkedHashMap定义LinkedHashMap的原理图LinkedHashMap和HashMap的Entry结构图LinkedHashMap在JDK中的定义LinkedHashMap继承关系:LinkedHashMap成员变量LinkedHashMap构造方法(5种)LinkedHashMap的init()方法LinkedHashMap基本数据结构(Entry:
- Java集合-Map接口(key-value)
猿究院-废柴火鸡
java开发语言
Map接口的特点:①KV键值对方式存储②Key键唯一,Value允许重复③无序。Map有四个实现类:1.HashMap类2.LinkedHashMap类3.TreeMap类4.Hashtable类1.HashMap类:存储结构:哈希表=数组Node[]+链表(红黑树)扩容方法:resize()扩容机制:原数组的2倍特点:①Key唯一,不允许重复②Value允许重复③无序HashMap:KV键值对集
- SpringBoot中 LinkedHashMap cannot be cast to xxx解决方法
TODOcode
SpringBoot中LinkedHashMapcannotbecasttoxxx解决方法.jpghttps://blog.csdn.net/cxycxytony/article/details/108931425
- redis java.util.LinkedHashMap cannot be cast to XXX
夏夜里的晚风。
java
这种问题是Redis中取出来的值,强转成我们需要的类型时报错解决:比如我们需要转User类Objectobj=valueOperations.get(key);Useru=JSON.parseObject(JSON.toJSONString(obj),User.class);
- java.util.LinkedHashMap cannot be cast to xxx
hjjksjin
java开发语言
java.util.LinkedHashMapcannotbecasttocom.entity.Person使用mybatis,resultMap映射的是实体类Person,查询出来的结果是一个ArrayList,然后结果存放在一个ListObject的data属性中,存放结果的类publicclassListObject{privateObjectdata;publicObjectgetData
- java.lang.ClassCastException: java.util.LinkedHashMap cannot be cast to XXX
张三疯学独孤九剑
记录bugfeignException
java.lang.ClassCastException:java.util.LinkedHashMapcannotbecasttoXXX今天在用feign进行远程调用的时候报错java.lang.ClassCastException:java.util.LinkedHashMapcannotbecasttoXXX类型转换异常这里是consumer调用方logger.info("添加评论方法被调用
- java中be cast to_java.util.LinkedHashMap cannot be cast to xxx
周博磊
java中becastto
java.util.LinkedHashMapcannotbecasttocom.entity.Person使用mybatis,resultMap映射的是实体类Person,查询出来的结果是一个ArrayList,然后结果存放在一个ListObject的data属性中,存放结果的类publicclassListObject{privateObjectdata;publicObjectgetData
- 23. 集合类
酷小洋
#Java基础语法java开发语言
集合1.概述2.分类2.1单列集合(`Collection`)2.2双列集合(`Map`)单列集合Collection、List、Set、ArrayList、LinkedList’、Vector、HashSet、TreeSet、LinkedHashSet双列集合Map、HashTable、HashMap、TreeMap、Properties、LinkedHashMap具体信息请查看API帮助文档1
- 集合框架 Map接口的特点及具体实现类HashMap、 LinkedHashMap、TreeMap、Hashtable
甜甜不甜1001
java开发语言
Map接口特点:key-value键值对集合,键key唯一,值value允许重复常见实现类HashMap:无序LinkedHashMap:有序TreeMap:按照key自动排序Hashtable:无序线程安全,性能低不允许使用null做key不允许使用null做valuepackagecom.ztt.Demo02;importjava.util.Arrays;importjava.util.Has
- Java 数据结构集合
Artisan_w
Java基础与八股java数据结构开发语言
文章目录Java数据结构1.基本数据结构1.1数组(Array)1.2链表(LinkedList)1.3栈(Stack)1.4队列(Queue)双向队列优先级队列2.树形数据结构2.1二叉树(BinaryTree)2.2堆(Heap)3.散列数据结构3.1哈希表(HashMap)3.2LinkedHashMap3.3TreeMapConcurrentHashMap详解ConcurrentHashM
- 解决:Jackson反序列化Java内部类失败(序列化后的识别码为LinkedHashMap,而非内部类本身)
SerikaOnoe
JavaJacksonjackson内部类反序列化JavaJsonTypeInfoJsonSubTypes
问题描述先看实体类:importcom.fasterxml.jackson.annotation.*;importlombok.Data;importorg.jeecg.common.system.base.entity.JeecgEntity;importorg.jeecg.modules.iot.entity.jackson.WorkerConverter;importorg.jeecg.mo
- 3分钟搞掂Set集合
Java3y
前言声明,本文用的是jdk1.8前面章节回顾:Collection总览List集合就这么简单【源码剖析】Map集合、散列表、红黑树介绍HashMap就是这么简单【源码剖析】LinkedHashMap就这么简单【源码剖析】TreeMap就这么简单【源码剖析】ConcurrentHashMap基于JDK1.8源码剖析现在这篇主要讲Set集合的三个子类:HashSet集合A:底层数据结构是哈希表(是一个
- Groovy语言基础
明明_白_白
1.分号不是必须的2.单引号和双引号都可以定义一个字符串常量3.单引号没有运算能力,双引号有运算能力。双引号中调用变量的规则是一个美元符号紧跟着一对花括号,花括号里放表达式,比如{1+1}等,只有一个变量的时候可以省略花括号,如{it.key},Value:${it.value}"}输出:map的类型:java.util.LinkedHashMap1024440Key:width,Value:10
- 中间件存储设计 - 数组与链表
善守的大龙猫
中间件中间件链表java
文章目录数组ArrayListLinkedListHashMap小结中间件主要包括如下三方面的基础:数据结构、JUC和Netty,接下来,我们先讲数据结构。数据结构主要解决的是数据的存储方式问题,是程序设计的基座。按照重要性和复杂程度,我选取了数组和链表、键值对(HashMap)、红黑树、LinkedHashMap和PriorityQueue几种数据结构重点解析。其中,数组与链表是最底层的两种结构
- 中间件-缓存、索引、日志
善守的大龙猫
中间件中间件缓存
文章目录缓存中间件本地缓存中间件分布式缓存中间件全文索引中间件分布式日志中间件小结缓存中间件缓存是性能优化的一大利器我们先一起来看一个用户中心查询用户信息的基本流程这时候,如果查找用户信息这个API的调用频率增加,并且在整个业务流程中,同一个用户的信息会多次被调用,那么我们可以引入缓存机制来提升性能:也就是说,在UserService中引入一个LinkedHashMap结构的内存容器,用它存储已经
- 【设计并实现一个满足 LRU (最近最少使用) 缓存 约束的数据结构】
学习愚公
缓存数据结构java算法
文章目录一、什么是LRU?二、LinkedHashMap实现LRU缓存三、手写LRU一、什么是LRU?LRU是LeastRecentlyUsed的缩写,意为最近最少使用。它是一种缓存淘汰策略,用于在缓存满时确定要被替换的数据块。LRU算法认为,最近被访问的数据在将来被访问的概率更高,因此它会优先淘汰最近最少被使用的数据块,以给新的数据块腾出空间。如图所示:先来3个元素进入该队列此时来了新的元素,因
- GuavaCache学习笔记一:自定义LRU算法的缓存实现
一枝花算不算浪漫
前言今天在看GuavaCache缓存相关的源码,这里想到先自己手动实现一个LRU算法。于是乎便想到LinkedHashMap和LinkedList+HashMap,这里仅仅是作为简单的复习一下。LRULRU(Leastrecentlyused,最近最少使用)算法根据数据的历史访问记录来进行淘汰数据,其核心思想是“如果数据最近被访问过,那么将来被访问的几率也更高”。代码实现原理LinkedList+
- map如何保证元素迭代的顺序
一口两个馍
springjava
平时的开发中需要用到map集合,最常用的也就是hashmap了,但是hashmap是无序的,平时要做一些例如角色权限导出的时候会导致最终的结构很不理想,这就需要用到另一种map了,也就是LinkedHashMap,它可以保证先入先出。原理:通过维护一个运行于所有条目的双向链表,LinkedHashMap保证了元素迭代的顺序缺点:增加了时间和空间上的开销
- redis学习笔记——不仅仅是存取数据
Everyday都不同
returnSourceexpire/delincr/lpush数据库分区redis
最近项目中用到比较多redis,感觉之前对它一直局限于get/set数据的层面。其实作为一个强大的NoSql数据库产品,如果好好利用它,会带来很多意想不到的效果。(因为我搞java,所以就从jedis的角度来补充一点东西吧。PS:不一定全,只是个人理解,不喜勿喷)
1、关于JedisPool.returnSource(Jedis jeids)
这个方法是从red
- SQL性能优化-持续更新中。。。。。。
atongyeye
oraclesql
1 通过ROWID访问表--索引
你可以采用基于ROWID的访问方式情况,提高访问表的效率, , ROWID包含了表中记录的物理位置信息..ORACLE采用索引(INDEX)实现了数据和存放数据的物理位置(ROWID)之间的联系. 通常索引提供了快速访问ROWID的方法,因此那些基于索引列的查询就可以得到性能上的提高.
2 共享SQL语句--相同的sql放入缓存
3 选择最有效率的表
- [JAVA语言]JAVA虚拟机对底层硬件的操控还不完善
comsci
JAVA虚拟机
如果我们用汇编语言编写一个直接读写CPU寄存器的代码段,然后利用这个代码段去控制被操作系统屏蔽的硬件资源,这对于JVM虚拟机显然是不合法的,对操作系统来讲,这样也是不合法的,但是如果是一个工程项目的确需要这样做,合同已经签了,我们又不能够这样做,怎么办呢? 那么一个精通汇编语言的那种X客,是否在这个时候就会发生某种至关重要的作用呢?
&n
- lvs- real
男人50
LVS
#!/bin/bash
#
# Script to start LVS DR real server.
# description: LVS DR real server
#
#. /etc/rc.d/init.d/functions
VIP=10.10.6.252
host='/bin/hostname'
case "$1" in
sta
- 生成公钥和私钥
oloz
DSA安全加密
package com.msserver.core.util;
import java.security.KeyPair;
import java.security.PrivateKey;
import java.security.PublicKey;
import java.security.SecureRandom;
public class SecurityUtil {
- UIView 中加入的cocos2d,背景透明
374016526
cocos2dglClearColor
要点是首先pixelFormat:kEAGLColorFormatRGBA8,必须有alpha层才能透明。然后view设置为透明glView.opaque = NO;[director setOpenGLView:glView];[self.viewController.view setBackgroundColor:[UIColor clearColor]];[self.viewControll
- mysql常用命令
香水浓
mysql
连接数据库
mysql -u troy -ptroy
备份表
mysqldump -u troy -ptroy mm_database mm_user_tbl > user.sql
恢复表(与恢复数据库命令相同)
mysql -u troy -ptroy mm_database < user.sql
备份数据库
mysqldump -u troy -ptroy
- 我的架构经验系列文章 - 后端架构 - 系统层面
agevs
JavaScriptjquerycsshtml5
系统层面:
高可用性
所谓高可用性也就是通过避免单独故障加上快速故障转移实现一旦某台物理服务器出现故障能实现故障快速恢复。一般来说,可以采用两种方式,如果可以做业务可以做负载均衡则通过负载均衡实现集群,然后针对每一台服务器进行监控,一旦发生故障则从集群中移除;如果业务只能有单点入口那么可以通过实现Standby机加上虚拟IP机制,实现Active机在出现故障之后虚拟IP转移到Standby的快速
- 利用ant进行远程tomcat部署
aijuans
tomcat
在javaEE项目中,需要将工程部署到远程服务器上,如果部署的频率比较高,手动部署的方式就比较麻烦,可以利用Ant工具实现快捷的部署。这篇博文详细介绍了ant配置的步骤(http://www.cnblogs.com/GloriousOnion/archive/2012/12/18/2822817.html),但是在tomcat7以上不适用,需要修改配置,具体如下:
1.配置tomcat的用户角色
- 获取复利总收入
baalwolf
获取
public static void main(String args[]){
int money=200;
int year=1;
double rate=0.1;
&
- eclipse.ini解释
BigBird2012
eclipse
大多数java开发者使用的都是eclipse,今天感兴趣去eclipse官网搜了一下eclipse.ini的配置,供大家参考,我会把关键的部分给大家用中文解释一下。还是推荐有问题不会直接搜谷歌,看官方文档,这样我们会知道问题的真面目是什么,对问题也有一个全面清晰的认识。
Overview
1、Eclipse.ini的作用
Eclipse startup is controlled by th
- AngularJS实现分页功能
bijian1013
JavaScriptAngularJS分页
对于大多数web应用来说显示项目列表是一种很常见的任务。通常情况下,我们的数据会比较多,无法很好地显示在单个页面中。在这种情况下,我们需要把数据以页的方式来展示,同时带有转到上一页和下一页的功能。既然在整个应用中这是一种很常见的需求,那么把这一功能抽象成一个通用的、可复用的分页(Paginator)服务是很有意义的。
&nbs
- [Maven学习笔记三]Maven archetype
bit1129
ArcheType
archetype的英文意思是原型,Maven archetype表示创建Maven模块的模版,比如创建web项目,创建Spring项目等等.
mvn archetype提供了一种命令行交互式创建Maven项目或者模块的方式,
mvn archetype
1.在LearnMaven-ch03目录下,执行命令mvn archetype:gener
- 【Java命令三】jps
bit1129
Java命令
jps很简单,用于显示当前运行的Java进程,也可以连接到远程服务器去查看
[hadoop@hadoop bin]$ jps -help
usage: jps [-help]
jps [-q] [-mlvV] [<hostid>]
Definitions:
<hostid>: <hostname>[:
- ZABBIX2.2 2.4 等各版本之间的兼容性
ronin47
zabbix更新很快,从2009年到现在已经更新多个版本,为了使用更多zabbix的新特性,随之而来的便是升级版本,zabbix版本兼容性是必须优先考虑的一点 客户端AGENT兼容
zabbix1.x到zabbix2.x的所有agent都兼容zabbix server2.4:如果你升级zabbix server,客户端是可以不做任何改变,除非你想使用agent的一些新特性。 Zabbix代理(p
- unity 3d还是cocos2dx哪个适合游戏?
brotherlamp
unity自学unity教程unity视频unity资料unity
unity 3d还是cocos2dx哪个适合游戏?
问:unity 3d还是cocos2dx哪个适合游戏?
答:首先目前来看unity视频教程因为是3d引擎,目前对2d支持并不完善,unity 3d 目前做2d普遍两种思路,一种是正交相机,3d画面2d视角,另一种是通过一些插件,动态创建mesh来绘制图形单元目前用的较多的是2d toolkit,ex2d,smooth moves,sm2,
- 百度笔试题:一个已经排序好的很大的数组,现在给它划分成m段,每段长度不定,段长最长为k,然后段内打乱顺序,请设计一个算法对其进行重新排序
bylijinnan
java算法面试百度招聘
import java.util.Arrays;
/**
* 最早是在陈利人老师的微博看到这道题:
* #面试题#An array with n elements which is K most sorted,就是每个element的初始位置和它最终的排序后的位置的距离不超过常数K
* 设计一个排序算法。It should be faster than O(n*lgn)。
- 获取checkbox复选框的值
chiangfai
checkbox
<title>CheckBox</title>
<script type = "text/javascript">
doGetVal: function doGetVal()
{
//var fruitName = document.getElementById("apple").value;//根据
- MySQLdb用户指南
chenchao051
mysqldb
原网页被墙,放这里备用。 MySQLdb User's Guide
Contents
Introduction
Installation
_mysql
MySQL C API translation
MySQL C API function mapping
Some _mysql examples
MySQLdb
- HIVE 窗口及分析函数
daizj
hive窗口函数分析函数
窗口函数应用场景:
(1)用于分区排序
(2)动态Group By
(3)Top N
(4)累计计算
(5)层次查询
一、分析函数
用于等级、百分点、n分片等。
函数 说明
RANK() &nbs
- PHP ZipArchive 实现压缩解压Zip文件
dcj3sjt126com
PHPzip
PHP ZipArchive 是PHP自带的扩展类,可以轻松实现ZIP文件的压缩和解压,使用前首先要确保PHP ZIP 扩展已经开启,具体开启方法就不说了,不同的平台开启PHP扩增的方法网上都有,如有疑问欢迎交流。这里整理一下常用的示例供参考。
一、解压缩zip文件 01 02 03 04 05 06 07 08 09 10 11
- 精彩英语贺词
dcj3sjt126com
英语
I'm always here
我会一直在这里支持你
&nb
- 基于Java注解的Spring的IoC功能
e200702084
javaspringbeanIOCOffice
- java模拟post请求
geeksun
java
一般API接收客户端(比如网页、APP或其他应用服务)的请求,但在测试时需要模拟来自外界的请求,经探索,使用HttpComponentshttpClient可模拟Post提交请求。 此处用HttpComponents的httpclient来完成使命。
import org.apache.http.HttpEntity ;
import org.apache.http.HttpRespon
- Swift语法之 ---- ?和!区别
hongtoushizi
?swift!
转载自: http://blog.sina.com.cn/s/blog_71715bf80102ux3v.html
Swift语言使用var定义变量,但和别的语言不同,Swift里不会自动给变量赋初始值,也就是说变量不会有默认值,所以要求使用变量之前必须要对其初始化。如果在使用变量之前不进行初始化就会报错:
var stringValue : String
//
- centos7安装jdk1.7
jisonami
jdkcentos
安装JDK1.7
步骤1、解压tar包在当前目录
[root@localhost usr]#tar -xzvf jdk-7u75-linux-x64.tar.gz
步骤2:配置环境变量
在etc/profile文件下添加
export JAVA_HOME=/usr/java/jdk1.7.0_75
export CLASSPATH=/usr/java/jdk1.7.0_75/lib
- 数据源架构模式之数据映射器
home198979
PHP架构数据映射器datamapper
前面分别介绍了数据源架构模式之表数据入口、数据源架构模式之行和数据入口数据源架构模式之活动记录,相较于这三种数据源架构模式,数据映射器显得更加“高大上”。
一、概念
数据映射器(Data Mapper):在保持对象和数据库(以及映射器本身)彼此独立的情况下,在二者之间移动数据的一个映射器层。概念永远都是抽象的,简单的说,数据映射器就是一个负责将数据映射到对象的类数据。
&nb
- 在Python中使用MYSQL
pda158
mysqlpython
缘由 近期在折腾一个小东西须要抓取网上的页面。然后进行解析。将结果放到
数据库中。 了解到
Python在这方面有优势,便选用之。 由于我有台
server上面安装有
mysql,自然使用之。在进行数据库的这个操作过程中遇到了不少问题,这里
记录一下,大家共勉。
python中mysql的调用
百度之后能够通过MySQLdb进行数据库操作。
- 单例模式
hxl1988_0311
java单例设计模式单件
package com.sosop.designpattern.singleton;
/*
* 单件模式:保证一个类必须只有一个实例,并提供全局的访问点
*
* 所以单例模式必须有私有的构造器,没有私有构造器根本不用谈单件
*
* 必须考虑到并发情况下创建了多个实例对象
* */
/**
* 虽然有锁,但是只在第一次创建对象的时候加锁,并发时不会存在效率
- 27种迹象显示你应该辞掉程序员的工作
vipshichg
工作
1、你仍然在等待老板在2010年答应的要提拔你的暗示。 2、你的上级近10年没有开发过任何代码。 3、老板假装懂你说的这些技术,但实际上他完全不知道你在说什么。 4、你干完的项目6个月后才部署到现场服务器上。 5、时不时的,老板在检查你刚刚完成的工作时,要求按新想法重新开发。 6、而最终这个软件只有12个用户。 7、时间全浪费在办公室政治中,而不是用在开发好的软件上。 8、部署前5分钟才开始测试。