彭先森

彭先森

认真生活,快乐工作!

Scroll Down
博客搭建(一):本地搭建

博客搭建(一):本地搭建

写博客的目的是为了给自己做资料积累,以至于以后方便自己查找,也方便他人查阅,也希望以后回过头来再看自己的博客时也会有所收获或感想。

2020-05-20
546 2
Android Jetpack 组件之 BindingAdapter 详解

Android Jetpack 组件之 BindingAdapter 详解

本篇文章主要介绍 Binding adapters 的使用方式,内容如下: 1. databinding 机制 2. BindingMethods 3. BindingAdapter 4. BindingConversion

2019-09-24
397 0
Android Jetpack 组件之 DataBinding 详解

Android Jetpack 组件之 DataBinding 详解

本篇主要侧重 dataBinding 的基本使用,主要内容如下: 1. dataBinding支持 2. 布局文件配置 3. 绑定数据 4. 特殊表达式 5. 事件绑定 6. 自定义绑定类 7. Others

2019-09-23
369 0
Android Jetpack 组件之 ViewModel 详解

Android Jetpack 组件之 ViewModel 详解

ViewModel 具有生命周期意识,会自动存储和管理 UI 相关的数据,即使设备配置发生变化后数据还会存在,我们就不需要在 onSaveInstanceState 保存数据,在 onCreate 中恢复数据了,使用 ViewModel 这部分工作就不需要我们做了,很好地将视图与逻辑分离开来。

2019-09-22
608 0
网站导航

网站导航

网站导航包括:在线学习、在线工具、IT技术、招聘网站等网站资料收集。

2019-08-23
547 0
设计模式

设计模式

设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代

2018-10-25
270 0
Java 动态代理详解

Java 动态代理详解

动态代理在 Java 中有着广泛的应用,比如 Spring AOP、Hibernate 数据查询、测试框架的后端 mock、RPC 远程调用、Java 注解对象获取、日志、用户鉴权、全局性异常处理、性能监控,甚至事务处理等。 本文主要介绍 Java 中两种常见的动态代理方式:JDK 原生动态代理和 CGLIB 动态代理。 由于 Java 动态代理与 Java 反射机制关系紧密,请读者确保已经了解了 Java 反射机制,可参考上一篇文章《Java反射机制详解》

2018-10-21
360 0
Java 反射机制详解

Java 反射机制详解

对于一般的开发者,很少需要直接使用 Java 反射机制来完成功能开发,但是反射是很多框架譬如 Spring, Mybatis 实现的核心,反射虽小,能量却很大。 本文主要介绍反射相关的概念以及 API 的使用。

2018-10-20
359 0
Java 队列详解

Java 队列详解

Queue:基本上,一个队列就是一个先入先出(FIFO)的数据结构。 Queue 接口与 List、Set 同一级别,都是继承了 Collection 接口。LinkedList 实现了 Deque接口。 在并发队列上 JDK 提供了两套实现,一个是以 ConcurrentLinkedQueue 为代表的高性能队列非阻塞,一个是以 BlockingQueue 接口为代表的阻塞队列,无论哪种都继承自 Queue 接口。

2018-10-18
397 0
Java 多线程详解

Java 多线程详解

线程对象是可以产生线程的对象。比如在 Java 平台中 Thread 对象 、Runnable 对象。线程,是指正在执行的一个指点令序列。在 Java 平台上是指从一个线程对象的 start() 方法开始,运行 run() 方法体中的那一段相对独立的过程。相比于多进程,多线程的优势有: 1. 进程之间不能共享数据,线程可以; 2. 系统创建进程需要为该进程重新分配系统资源,故创建线程代价比较小; 3. Java 语言内置了多线程功能支持,简化了 Java 多线程编程。

2018-10-16
302 0
HashMap 的实现原理

HashMap 的实现原理

1. hashCode 的存在主要是用于查找的快捷性,如 Hashtable,HashMap 等,hashCode 是用来在散列存储结构中确定对象的存储地址的。 2. 如果两个对象相同,就是适用于 equals(java.lang.Object) 方法,那么这两个对象的 hashCode 一定要相同。 3. 如果对象的 equals 方法被重写,那么对象的 hashCode 也尽量重写,并且产生 hashCode 使用的对象,一定要和 equals 方法中使用的一致,否则就会违反上面提到的第 2 点。 4. 两个对象的 hashCode 相同,并不一定表示两个对象就相同,也就是不一定适用于 equals(java.lang.Object) 方法,只能够说明这两个对象在散列存储结构中,如 Hashtable,他们“存放在同一个篮子里“。

2018-10-15
305 0
Android Studio 常用快捷键

Android Studio 常用快捷键

说明:本文中的快捷键是针对Mac操作系统。我将快捷键归为三大类:阅读代码、编辑代码、调试代码。

2017-09-28
265 0