- 博客(7)
- 资源 (25)
- 收藏
- 关注
原创 Thread源码分析
如上图,可见:RUNNABLE = 正在JVM中运行的(Running)+ 可能在等待操作系统级别的资源(Ready),例如CPU时间片 线程创建之后,不会立即进入就绪状态,因为线程的运行需要一些条件(比如内存资源),只有线程运行需要的所有条件满足了,才进入就绪状态。 当线程进入就绪状态后,不代表立刻就能获取CPU执行时间,也许此时CPU正在执行其他的事情,因此它要等待。当得到CP...
2018-11-23 16:40:10 300
原创 消息传送的几种模式
一、PTP消息传送模型1、PTP(使用Queue 即队列目标) 消息从一个生产者传送至一个消费者。在此传送模型中,目标是一个队列。消息首先被传送至队列目标,然后根据队列传送策略,从该队列将消息传送至向此队列进行注册的某一个消费者,一次只传送一条消息。可以向队列目标发送消息的生产者的数量没有限制,但每条消息只能发送至、并由一个消费者成功使用。如果没有已经向队列目标注册的消费者,队列将保留它收到的...
2018-11-14 17:00:31 2213
原创 序列化和反序列化
序列化:把对象转换为字节序列的过程称为对象的序列化。反序列化:把字节序列恢复为对象的过程称为对象的反序列化。 具体详细介绍看大神的:https://blog.csdn.net/qq_27093465/article/details/78544505...
2018-11-05 16:27:54 134
原创 jdk1.8 stream()常用方法
map(p -> p)filter(p -> p)mapToInt(p -> p).max() List<Long> l = placeSpuList.getPlaceSpuList().stream().map(p -> Long.parseLong("" + p.getPlaceId() + "")).collect(Collectors....
2018-11-02 14:36:37 1628
原创 java 拆箱和装箱
Java为什么要引入自动装箱和拆箱的功能?(为什么)举个例子:主要是用于java集合中,List<Inteter> list=new ArrayList<Integer>();list集合如果要放整数的话,只能放对象,不能放基本类型,因此需要将整数自动装箱成对象,基本数据类型,如int,float,double,boolean,char,byte,不具备对象的特征,不能...
2018-11-01 15:04:43 232
原创 String 重载 "+" 原理分析
String 类中的每一个看起来会修改 String 值的方法,实际上都是创建了一个全新的 String 对象,用来包含修改后的字符串内容,这也可以说明 String 对象具有只读的属性。 string 和 stringBuilder public static String getString1(String[] strArray){ String result =...
2018-11-01 11:43:59 354
原创 jdk6和jdk7的区别
substring:JDK6:String是通过字符数组实现的。在jdk 6 中,String类包含三个成员变量:char value[], int offset,int count。他们分别用来存储真正的字符数组,数组的第一个位置索引以及字符串中包含的字符个数。当调用substring方法的时候,会创建一个新的string对象,但是这个string的值仍然指向堆中的同一个字符数组。这...
2018-11-01 10:55:03 2368
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人