dai的博客

积累才能成长,事无巨细,记录自己

Java进阶——— 线程池的原理分析

前言 在了解线程池之前,其实首先出现的疑问是:为什么要使用线程池,其次是了解什么是线程池,最后是如何使用线程池,带着疑问去学习。 为什么要使用 前面多线程文章中,需要使用线程就开启一个新线程,简单方便,但是这样在大量线程被开启时:如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束...

2019-01-21 10:06:12

阅读数 87

评论数 0

Java进阶 ——— Java多线程(四)之多线程局部变量TreadLocal

在了解ThreadLocal之前,一定要确定一个概念:ThreadLocal不是用来解决共享对象的多线程访问问题的 那么ThreadLocal在多线程的作用是什么呢?从下面几个方面来了解 ThreadLocal的作用 ThreadLocal可以理解为:线程局部变量, 是每一个线程所单独持有的。其他...

2018-12-30 17:37:32

阅读数 95

评论数 0

Java进阶 ——— Java多线程(三)之多线程同步问题

引言 接上一篇,Java进阶 ——— Java多线程(二)之如何开启多线程 介绍了Java多线程的开启方法,但是多线程运行的安全问题,将是本篇的重点 延伸阅读,Java多线程系列文章 Java进阶 ——— Java多线程(一)之进程和线程 Java进阶 ——— Java多线程(二)之如何开启多线...

2018-10-18 23:07:51

阅读数 356

评论数 3

Java进阶 ——— Java多线程(二)之如何开启多线程

引言 第一篇文章讲到了Java多线程的概念和作用,本篇文章则介绍在Java中如何开启多线程。 延伸阅读,Java多线程系列文章 Java进阶 ——— Java多线程(一)之进程和线程 开启方式 Java开启多线程有三种方式 继承Thread类 实现Runnable接口 java.util.co...

2018-10-18 00:39:19

阅读数 169

评论数 0

Java进阶 ——— Java多线程(一)之进程和线程

引言 讲到线程,不可避免的提到进程。而因为线程无法脱离进程单独存在,那什么是进程? 什么是进程? 进程:具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的最小单位。 例如手机运行的众多APP,每个可以理解为一个进程(实际上很多APP运行多个进程),每个APP直接...

2018-10-17 20:59:19

阅读数 132

评论数 0

Android进阶 —— 深入理解AIDL进程间通信

Android 深入理解AIDL进程间通信 前言 关于AIDL的资料,层出不穷,但是能让人简单明了理解的文章不多,那么我们就自己撸一遍,清晰明了的理解一下AIDL的原理。 准备 在理解AIDL原理之前,先写一个简单的使用AIDL进行进程间通信的例子,根据这个例子来由浅及深的理解AI...

2018-05-11 20:17:48

阅读数 228

评论数 0

Java进阶知识 —— 快速排序算法分析

本篇文章将摘自前辈的总结 白话经典算法系列之六 快速排序 快速搞定 这篇文章深入简出,很好理解,所以本文思路不再重写,只是代码部分略有修改,改为自己理解的注释版本 快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被采用,再加上快速排序思想—-分治法也确实实用,因...

2018-05-08 21:11:27

阅读数 99

评论数 0

Java进阶知识 —— TCP四次挥手(图解)-为何要四次挥手

当客户端和服务器通过三次握手建立了TCP连接以后,当数据传送完毕,肯定是要断开TCP连接的啊。那对于TCP的断开连接,这里就有了神秘的“四次挥手”。 第一次挥手:主机1(可以使客户端,也可以是服务器端),设置Sequence Number和Acknowledgment Number,向主机2发...

2018-05-04 11:46:43

阅读数 162

评论数 0

简单明了的分析Android触摸事件,看完再也不纠结了

关于Android触摸事件机制 Android触摸事件机制,开发中都是老生常谈,但是惭愧的是,这么久开发,依然对Android触摸事件的具体流程,懵懵懂懂,趁着项目上线间隙,来重新研究一下。 准备 为了尽可能简单并清晰的展示Android触摸事件的 分发--拦截--消费过程,将根据Activity...

2017-08-15 19:00:44

阅读数 1057

评论数 0

Androidstudio高效管理第三方API的KEY及Gradle版本管理

延伸AndroidStudio 利用Gradle打包添加上版本名和版本号 第三方API的KEY的管理 Android开发,基本都会用到第三方SDK,例如百度地图、支付宝支付等。 通常第三方的KEY都是保存在AndroidManifest中: <!...

2017-06-25 21:57:17

阅读数 1070

评论数 0

Android menu属性详解

转自:http://blog.csdn.net/n3562141/article/details/50325717 menu的属性展示 <?xml version="1.0" encoding="utf-8"?> <...

2019-04-23 12:43:49

阅读数 42

评论数 0

LocalBroadcastManager 注意事项

LocalBroadcastManager 只能用来在应用内发送和接收广播,不可用接收系统广播通知 前言 关于LocalBroadcastManager的使用,就不再详述,简单来说,有以下几个好处 因广播数据在本应用范围内传播,你不用担心隐私数据泄露的问题。 不用担心别的应用伪造广播,造成...

2019-04-20 18:34:31

阅读数 51

评论数 0

Java进阶——Java 局部内部类访问局部变量为什么必须加final关键字

Java 局部内部类访问局部变量为什么必须加final关键字 疑问 在Java中,局部内部类如果调用了方法中的变量,那么该变量必须申明为final类型,如果不申明,则编译就会出错。 这里的内部类指的是方法内部类或匿名内部类,不包含静态内部类和成员内部类 这里通过一个例子类分析 public c...

2018-10-16 20:33:50

阅读数 305

评论数 0

Java进阶——如何查看Java字节码

前言 深入学习Java语言,也免不了要去研究JVM类加载、JVM字节码相关的东西,这时就需要经常查看字节码。 方法 1.使用命令行 在编译后,进入字节码存放的文件夹,例如:FileA\Hello.class 使用命令行窗口 java -c FileA\Hello.class,即可在窗口浏览字节码文...

2018-10-16 18:42:19

阅读数 288

评论数 0

Java进阶 —— 面试必备 Java单链表反转

前言 关于链表操作,基本面试都会考察,每次都是看了就懂,过后就忘。看了 Java单链表反转文章,分析的很清晰,很好理解。 单链表的结点结构: data域:存储数据元素信息的域称为数据域; next域:存储直接后继位置的域称为指针域,它是存放结点的直接后继的地址(位置)的指针域(链域)。 dat...

2018-10-15 17:06:18

阅读数 82

评论数 0

如何从零开始搭建自己的博客(通俗易懂)

序 作为一名合(zhuang)格(bi)的程序猿,经常写点东西,肯定少不了各种网站、博客,通俗的CSDN,文艺的简书,强大的GitHub,以及微信、掘金、知乎等等风格迥异的平台。不过,再多的地方,也容不下一颗想捯饬的心,不管什么网站,都有自己固定的模板,统一的风格,这怎么能满足程序猿的一颗躁动的心...

2018-10-11 13:40:09

阅读数 614

评论数 4

Java进阶知识 —— 内部类(InnerClass)静态内部类、成员内部类、方法内部类、匿名内部类

内部类(InnerClass)----静态内部类、成员内部类、方法内部类、匿名内部类 Java进阶知识系列文章: Java进阶知识 —— 算法复杂度o(1), o(n), o(logn), o(nlogn) Java进阶知识 —— 垃圾回收机制 Java进阶知识 —— 快速排序算法分析 Java...

2018-10-09 17:27:57

阅读数 114

评论数 0

Android进阶 ——— Android官方架构组件LiveData

上一篇文章,学习了Android官方架构组件的第一部分Android进阶 ——— Android官方架构组件Lifecycle 初探 LiveData 是一个可以感知 Activity 、Fragment生命周期的数据容器。当 LiveData 所持有的数据改变时,它会通知相应的界面代...

2018-08-23 11:33:05

阅读数 420

评论数 2

Android进阶 ——— Android官方架构组件Lifecycle

初探 Lifecycle是Android官方推出的架构组件,在谷歌开发者官微发布的正式发布 Android 架构组件 1.0 稳定版 | 附带中文介绍视频 简明扼要的阐述了推出的架构组件的作用及使用,也可以查看Android开发者官网。 先来看看架构组件的第一部分Lifecycle。 在长...

2018-08-21 10:15:24

阅读数 220

评论数 0

Java进阶知识 —— 算法复杂度o(1), o(n), o(logn), o(nlogn)

摘自 https://blog.csdn.net/Mars93/article/details/75194138 在描述算法复杂度时,经常用到o(1), o(n), o(logn), o(nlogn)来表示对应算法的时间复杂度, 这里进行归纳一下它们代表的含义: 这是算法的时空复杂...

2018-08-13 15:46:11

阅读数 3023

评论数 0

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