- 博客(8)
- 收藏
- 关注
翻译 安卓的异步任务
1.为什么要用异步任务?首先安卓里面的线程分为UI线程和子线程,但是在主线程里面不能进行耗时操作,所有的耗时操作需要放到子线程里面去进行。而AsyncTask的作用就是实现异步任务,解决耗时操作的。2.ANR是什么?ANR即application not response,在UI线程里面进行耗时操作就会出现ANR3.那些属于耗时操作?耗时的网络访问在主线程中解析网络返回的数据在主线...
2019-08-23 14:13:26
223
原创 Activity生命周期的学习和理解
Activity生命周期Activity一共定义了7个回调方法:onCreat()、onStart()、onResume()、onPause()、onStop()、onDestory()、onRestart()。当进入你的app主页面,也即你的第一个Activity(记作A1)的时候,onCreat()、onStart()、onResume()都会执行,A1进栈(安卓的活动是通过栈来管理的),...
2019-08-22 13:59:09
154
翻译 Java锁、CAS
一、 Java锁1.常见的锁有synchronized和Lock() ①synchronized 是jvm层面实现的,可以直接用,不过要锁住某个对象;lock是属于j.u.c包下的接口,用的时候要实现lock接口。 ②synchronized一般和wait()、notify()、notifyAll()一起使用,使用完不用释放锁;lock必须在finally里面手动释放。 @lock锁与s...
2018-08-27 16:52:47
465
翻译 数据库索引、sql优化、引擎
索引1.索引分类: 唯一/非唯一、聚集/非聚集、主键索引(是特殊的唯一索引)、联合索引。2.聚集/非聚集的区别 ①定义:聚集索引,表记录的物理顺序与键的索引排列顺序一致(我的理解是:索引和记录按顺序排);非聚集索引,表记录的物理顺序与键的索引排列顺序不一致(我的理解是:索引和记录不按顺序排)。 ②优缺点:聚集索引,查询速度快,一旦第一个被找到,后续的索引记录就被找到了;但修改慢,一旦...
2018-08-21 10:27:00
333
翻译 ArrayList、HashMap、ConcurrentHashMap并发下出现的问题
一、 ArrayListArrayList不是线程安全的,因为没有加锁。在并发环境下,会出现一些问题。 1.add()方法会出现数组越界问题。 ———先说说add()方法的内部实现,①step1先检查数组容量,②step2容量足够直接添加,容量不够扩容为原来1.5倍后添加。在说说为什么会出现数组越界问题,假设有两个线程在操作同一个ArrayList,线程一执行step1(容量足够)后被挂起...
2018-08-17 22:58:17
885
翻译 泛型的理解
什么是泛型,泛型有什么优点,以及泛型擦除,下面我们一一解答1.什么是泛型:即参数化类型。比如 List <String>.2.泛型优点: ①安全简单。在编译时检查类型安全,(类型安全检查是保证类型的转换时可以正确转换的)。如List<String>这里只能放入String类型,体现出了安全检查。 ②增加复用性。解决方法重载问题,public void writ...
2018-08-17 10:40:23
315
转载 运用git将本地项目上传到Github
打开git-bash客户端 第一步:我们需要先创建一个本地的版本库(其实也就是一个文件夹)。 现在我通过命令行在桌面新建一个abc文件夹(你也可以在其他任何地方创建这个文件夹),并且进入这个文件夹 第二步:通过命令git init把这个文件夹变成Git可管理的仓库 这时文件夹已经创建好了,并初始化了 第三步:这时候你...
2018-08-14 16:59:33
136
翻译 JAVA内存模型与JVM内存模型的区别
**JAVA内存模型与JVM内存模型的区别** 直接进入正题**JAVA内存模型: Java内存模型规定所有的变量都是存在主存中,每个线程都有自己的工作内存。线程堆变量的操作都必须在工作内存进行,不能直接堆主存进行操作,并且每个线程不能访问其他线程的工作内存。 Java内存模型的Volatile关键字,原子性、可见性、有序性 详情 *...
2018-08-14 14:34:52
19497
5
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人