自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 资源 (2)
  • 收藏
  • 关注

原创 AsyncTask及FutureTask#get()方法的实现

1.使用的是SerialExecutor封装ThreadPoolExecutor,该成员是static,使派发到SyncTask的任务使串行的。2.doInbackground在线程池的线程中执行3.而onPreExecute在调用SyncTask#execute的线程执行4.onPostExecute在主线程中执行,因为是通过handler把任务结束的消息及结果对象传到其他线程的,通...

2019-04-28 19:08:11 1925

转载 final修饰的变量就是常量?final修饰局部变量在栈还是堆还是常量池中?

概念 常量池 常量池的好处 Class类文件中的常量池 常量池 运行时常量池 包装类常量池对象池 Java中装箱和拆箱 赋值时 方法调用时 方法运算时 参考概念什么是常量?对于这个问题,可能很多人都可以脱口而出 : 用final修饰的变量是常量 ,或者是在编译时期定义好的字符串。(字符串常量)但是这种说法是不严谨的,因为准确来说 : 常量是...

2019-04-25 00:17:49 14276 6

转载 细说匿名内部类引用方法局部变量时为什么需要声明为final

一、前言  在研究公司某个项目的源码,看到前人使用了挺多内部类,内部类平时我用的比较多的是匿名内部类,平时用的多的是匿名内部类,其他形式的用的比较少,然后我就有个疑惑:到底内部类是基于什么样的考虑,才让java设计者搞这么一套实现?还有,平时在什么情境下会考虑使用内部类呢?这个我将在另外一篇博文进行介绍,详情参见:xxxxxx,本篇博文是在查阅内部类相关资料时,看到很多博文在解释为什么匿名内部...

2019-04-25 00:16:21 344

转载 this引用逃逸(使用内部类获取未外部类未初始化完的变量),多态父类使用子类未初始化完的变量

1,this引用逃逸并发编程实践中,this引用逃逸("this"escape)是指对象还没有构造完成,它的this引用就被发布出去了。这是危及到线程安全的,因为其他线程有可能通过这个逸出的引用访问到“初始化了一半”的对象(partially-constructed object)。这样就会出现某些线程中看到该对象的状态是没初始化完的状态,而在另外一些线程看到的却是已经初始化完的状态,...

2019-04-24 23:43:32 358

转载 指令重排导致懒汉式单例模式失效

指令重排导致单例模式失效我们都知道一个经典的懒加载方式的单例模式:public class Singleton {private static Singleton instance = null;private Singleton() { }public static Singleton getInstance() {if(instance == null) {synch...

2019-04-24 19:29:30 844

转载 Android动态加载之ClassLoader详解

Dalvik虚拟机如同其他Java虚拟机一样,在运行程序时首先需要将对应的类加载到内存中。而在Java标准的虚拟机中,类加载可以从class文件中读取,也可以是其他形式的二进制流。因此,我们常常利用这一点,在程序运行时手动加载Class,从而达到代码动态加载执行的目的。只不过Android平台上虚拟机运行的是Dex字节码,一种对class文件优化的产物,传统Class文件是一个Java源码文件会...

2019-04-23 21:16:59 997

原创 JVM垃圾回收

两种对象存活判定算法:1.引用计数法:每个对象分配一个引用计数器,在引用数为0时,则可以回收。但是无法解决对象字段互相引用的情况,所以目前商用虚拟机中的垃圾回收器不使用此算法。2.可达性分析算法:首先枚举虚拟机运行时数据区中所有GC ROOT(虚拟机栈、本地方法栈中的引用,常量池的引用,静态变量引用可以作为GC ROOT);然后从GC ROOT开始分析引用链,如果对象不在引用链中,则表示G...

2019-04-18 12:35:16 172

转载 JVM常见面试题

1. 内存模型以及分区,需要详细到每个区放什么。栈区:栈分为java虚拟机栈和本地方法栈重点是Java虚拟机栈,它是线程私有的,生命周期与线程相同。每个方法执行都会创建一个栈帧,用于存放局部变量表,操作栈,动态链接,方法出口等。每个方法从被调用,直到被执行完。对应着一个栈帧在虚拟机中从入栈到出栈的过程。通常说的栈就是指局部变量表部分,存放编译期间可知的8种基本数据类型,及对象引...

2019-04-15 23:54:22 101

转载 Java并发之AQS详解(AbstractQueuedSynchronizer)

一、概述  谈到并发,不得不谈ReentrantLock;而谈到ReentrantLock,不得不谈AbstractQueuedSynchronizer(AQS)!  类如其名,抽象的队列式的同步器,AQS定义了一套多线程访问共享资源的同步器框架,许多同步类实现都依赖于它,如常用的ReentrantLock/Semaphore/CountDownLatch...。  以下是本文的目录大...

2019-04-10 23:08:31 126

原创 Java中GregorianCalendar的基本使用

使用默认时区即东八区: int ONE_SECOND = 1000; int ONE_MINUTE = 60*ONE_SECOND; int ONE_HOUR = 60*ONE_MINUTE; long ONE_DAY = 24*ONE_HOUR; long ONE_WEEK = 7*ONE_DAY...

2019-04-08 14:32:22 8734

android-all-9-robolectric-4913185-2.jar

单元测试使用robolectric框架时需要下载的依赖,但是使用Android Studio下载太慢了,下载该资源直接放在C盘用户根目录下的相对路径.m2\repository\org\robolectric\android-all\9-robolectric-4913185-2下, 那么在build.gradle声明testImplementation 'org.robolectric:robolectric:4.3',则会跳过下载该资源

2019-11-03

SourceInsight.rar

里面包含SourceInsight4安装包及license的lic文件

2019-08-21

空空如也

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

TA关注的人

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