- 博客(10)
- 资源 (10)
- 收藏
- 关注
原创 单例设计模式双判空实现以及使用volatile修饰instance讲解
单例设计模式的写法有那么几种,懒汉式和饿汉式,但是相比较而言都不够严谨,存在逻辑漏洞,某些情况下并不能保证完全实现单例,尤其是在并发的情况下,会出现线程不安全的问题,这一点我们这里并不细讲,大家可以自行查找其他文章。所以双判空加锁的单例写法就出现了,来看看一般人的写法:public class Test { private static Test instance; ...
2018-02-28 10:47:34 21834 4
原创 泛型中占位符T和?有什么区别?
泛型中占位符T和?有什么区别?这是一个好问题,有的人可能弄不清楚,所以我们这里简单的演示一下,相信大家一定能弄清楚的!先上两段代码:public static <T> void show1(List<T> list){ for (Object object : list) { System.out.println(object.toString...
2018-02-26 11:17:18 32278 26
原创 Android为什么推荐使用SparseArray来替代HashMap?
SparseArray也许你没听过,那正好今天就来学习一下咯,这也是Android官方推荐使用的,所以我们需要了解一下他的优势和劣势在哪些地方。首先SparseArray用来和HashMap做比较,在安卓项目中,你新建一个HashMap对象,注意下面会有下划线,里面有提示 翻译成白话文的意思就是建议使用SparseArray替代HashMap来获得更好的表现。我们都知道HashM...
2018-02-24 16:31:09 9543 1
原创 LruCache实现原理分析
LruCache是面试常客,你说你知道它是干啥的,却不知道它是怎么干的,你说这有啥用,知其然得知其所以然,所以一起看了看源码,一定会恍然大悟,以后面试可以有底气的说出它的工作原理了,那么一起来看看吧,代码不多,加上注释也就300多行。我们可以打开LruCache.java的源码,第一行代码就是声明了一个变量private final LinkedHashMap<K, V>...
2018-02-22 16:00:53 26839
原创 Android事件分发机制流程详解(二)
前言:上一篇我们已经从事件分发执行流程入手,一起来了解并分析了事件分发的经过,大家应该从分析中能对事件分发的有个总体的认识,并且我相信应该也能自己分析出事件会如何执行,其实就那么点东西,弄明白了就不难了,但是今天我们还是要来看看activity,viewgroup,view的相关源码来学习一下他们的工作原理,那就开始吧!首先来结合我们上一篇的工程情况来看看: 再次强调,1个点击事...
2018-02-12 17:38:55 8238
原创 Android事件分发机制流程详解(一)
前言:今天来捋一捋Android的事件分发机制吧,其实很多人都知道有这么个东西,但是具体的事件执行流程没有认真的研究过分析过的,还是很难捋清楚其中的关系的,毕竟从activity到ViewGroup到View,有那么多的dispatchTouchEvent、onTouchEvent,ViewGroup中还多了个onInterceptTouchEvent方法,方法都可以返回true、false或者s...
2018-02-11 10:11:45 13142
原创 JAVA学习笔记28——网页静态化之Freemarker(二)
上一篇文章中我们讲了关于freemarker的基本知识和使用方法,包括一些标签的使用,如果没看过的童鞋,可以点击前往学习《JAVA学习笔记27——网页静态化之Freemarker(一)》那么今天我们来讲一下如何将freemarker和Spring进行整合,并且整合后如何在代码中进行使用,gogogo!!!1. 在pom.xml文件中添加依赖dependency> groupId
2018-02-06 10:09:06 6720
原创 JAVA学习笔记27——网页静态化之Freemarker(一)
开始我们的内容之前,我们先来了解一下为什么网站优化要把网页静态化?1.为什么网站优化要把网页静态化?SEO优化过程中,把动态网页转化为静态页面是许多SEO优化人员常常做的事情,面对这种SEO优化操作的行为很多人可能有疑问,那就是为什么网站优化要把网页静态化?下面就给大家详细的介绍一下关于网页静态化的一些问题。什么是动态页面?什么是静态页面?动态网页:是以.asp、.jsp、.p
2018-02-06 09:27:07 8190
原创 JAVA学习笔记26——ActiveMQ讲解之整合Spring(二)
上一篇文章中我们讲解了ActiveMQ的基本用法,在代码中按照步骤一步步的就可以正常使用了,但是我们应该都会觉得这样的写法太繁琐了,每次都得写这么一大段代码才能发送和接收消息,所以今天我们讲一下如何将ActiveMQ整合Spring,和Spring集成以后,ActiveMQ的使用将会简单不少。一、代码配置1.1 在pom文件中引用相关jar包dependency>
2018-02-05 14:23:33 5763
原创 JAVA学习笔记25——ActiveMQ讲解及实战入门(一)
情景分析: 1.在项目中,添加商品的业务逻辑中,需要添加一个同步索引库的业务逻辑。 如果把代码直接写在本项目中,那么就会导致业务逻辑耦合度高,业务拆分不明确 2.我们把业务逻辑在***search项目中实现,调用服务在***manager实现,将业务逻辑分开实现,但是这样又会导致服务之间的耦合度变高,服务的启动有先后顺序,如果调用服务先启动,执行服务后启动,那么调用服务将会失败。
2018-02-01 17:05:00 3221
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人