自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 一点反思

     有句话是这么说的,你只能选择一种生活,为之付出代价,保存喜悦的瞬间作为激励。     昨天是很快乐的一天。人生中从心底升腾起的强烈的快乐的时候,是一些短暂又稍纵即逝的时刻。比如得到想去的学校的录取通知的瞬间,比如收到想去公司的offer的瞬间,比如达到自己期待已久的目标的瞬间。快乐是短暂的,但是体会过那种真正从心底发出的喜悦,即便短暂,却难以忘却。       学习java,是我挺触动的...

2018-04-20 09:46:13 98

原创 对java动态代理的一些理解

之前在学习spring框架的时候接触到面向切面编程(AOP),aop就是一种典型的动态代理。但是一直对java的动态代理没有一个全面的认识和学习,通过学习,记录一下自己对java的动态代理的理解。1.什么是动态代理简单来说,代理就是对一个对象生成他的代理对象,来实现对这个被代理对象的一些操作,比如消息的预处理,消息的过滤,消息事后处理等等。代理对象和被代理对象是实现相同的接口,对被代理对象的操作实...

2018-05-07 15:46:15 232

原创 Linux中硬连接和软连接的区别

Linux的In指令是连接,连接分为硬连接和软连接,In -s 是软连接。那么他们之间有什么区别呢。硬连接,简单的理解可以看做是镜像。 连接文件和被连接文件是对存储器中同一份数据的引用计数文件,所以他们有相同的iNode节点。他们的大小是一样的,修改他们其中的一个,另外一个就会相应改变,删除其中的一个,另外一个的访问不受影响。硬链接的对象不能是目录文件。软连接,简单的理解为快捷方式。连接文件存储的...

2018-05-04 21:47:55 258

原创 spring中的循环依赖的实现

        之前在学习spring的时候对循环依赖这方面有一些疏忽,今天下午对此进行了学习,就将自己的理解记录下来。1.什么叫循环依赖比如A依赖B,B依赖C,C依赖于A,这样就构成了循环依赖2.spring是如何实现循环依赖的呢,下面我分为两个方面来进行说明。一是,构造依赖,二是,属性依赖        我们新建三个类,A,B,C,A的有参构造是B,B的有参构造是C,C的有参构造是A。这样就形...

2018-05-02 16:37:10 253

原创 判断对象是否可以回收的方法

1.引用计数法给每一个对象添加一个引用计数器,每次引用计数器就加1,当引用失效的时候就减1,当计数器的值为0的时候,就可以对该对象进行回收。2.可达性分析算法将一系列的gc roots对象作为起始点,从这些节点向下搜索,搜索走过的路径称为是引用链,当gc roots对象到一个对象没有引用链的时候,称为这个对象是不可达的,此对象是不可用的,就可以进行回收。在上图中,对象5.6.7都是不可达的,就都是...

2018-04-26 21:10:32 1360

转载 Hashmap源码

《Java源码分析》:HashMap看过很多次HashMap的源码了,但是,每次都没有做记录,因此,每次记忆都不太深,今天在看别人博客时提到Hashtable是线程安全的,Hashtable中的方法都用了synchronized进行了同步,于是就看了下Hashtable的源码,在看的过程中,写了篇博客,现在2016年7月20日22:03:53,还在教研室,感觉回寝室还早,因此,决定再看下HashM...

2018-04-16 16:13:51 766

原创 list

1.arraylist基于array所以方便查找,但是不方便添加和删除对象。其中的元素是有序的,允许重复元素。线程是不同步的,是线程不安全的。在元素填满容器的时候默认扩容增加原来的一半,并且不可以自定义扩容的大小。2.linkedlist基于链表,方便添加删除元素,但是并不适合查找元素,因为会从链表的一端查询到另外一端,效率低。其中的元素是无序的,但是允许重复和允许为空。不允许同步访问,是线程不安...

2018-04-16 10:43:50 119

原创 static关键字

在Java语言中,static表示“静态”的意思,static在java语言中使用有四种,变量,方法,代码块,内部类。1、static变量static变量也称作静态变量,静态变量和非静态变量的区别是:静态变量被所有的对象所共享,在内存中只有一个副本,它当且仅当在类初次加载时会被初始化。而非静态变量是对象所拥有的,在创建对象的时候被初始化,存在多个副本,各个对象拥有的副本互不影响2、...

2018-04-13 15:30:49 91

原创 ConcurrentHashMap以及String ,StringBuffer和StringBuilder的区别

1. ConcurrentHashMap         访问HashTable的 所有线程竞争同一把锁,效率就会降低。而ConcurrentHashMap使用的锁分段技术,首先将数据分成一段一段的存储,然后给每一段数据配一把锁,每一把锁用于锁容器其中一部分数据,当一个线程占用锁访问其中一个段数据的时候,其他段的数据也能被其他线程访问。那么当多线程访问容器里不同数据段的数据时,线程间就不会存在锁竞...

2018-04-12 11:16:49 283

原创 java捕获线程异常

1.如果线程运行时异常会怎么样          如果异常没有被捕获的话,线程会停止执行。如果该线程中有某个对象的监视器,该对象锁会被释放。2.如何捕获线程中的异常        JDK5之后有了一个Thread.UncaughtExceptionHandler 新接口,它允许我们在每一个Thread对象上添加一个异常处理器。Thread.UncaughtExceptionHandler.unca...

2018-04-11 17:01:51 109

原创 面试小结

1.ReadWriteLock       读写分离锁,读锁可以在没有写锁的时候被多个线程同时持有,写锁是独占的。 每次只能有一个写线程,但是同时可以有多个线程并发地读数据。一个获得了读锁的线程必须能看到前一个释放的写锁所更新的内容。 读写锁比互斥锁允许对于共享数据更大程度的并发。ReadWriteLock适用于读多写少的并发情况。 2.condition实现控制多线程执行顺序        ja...

2018-04-11 16:36:37 108

原创 ThreadLocal的作用

       为每一个使用变量的线程提供独立的变量副本,每个线程都可以修改自己的独立的线程副本,但是并不会影响其他的线程副本,从而保证了线程安全。变量副本存在于ThreadLocal的虚拟Map中。...

2018-04-11 10:46:35 930

原创 生产者消费者模式

1.生产者消费者模式的简介        负责生产数据的模块称为生产者,负责处理数据的模块称为消费者。生产者和消费者中间存在缓冲区。生产者将产生的数据放进缓冲区,消费者从缓冲区取出数据进行处理。1.生产者消费者模式的优点和作用(1)解耦因为中间存在缓冲区,生产者和消费者之间的耦合度降低。称为解耦。(2)支持并发生产者将数据生产出来放进缓冲区,就可以去生产下面的数据,而不用依赖消费者的处理速度。(3...

2018-04-11 10:23:41 84

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除