Android
文章平均质量分 91
bu会水的鱼
这个作者很懒,什么都没留下…
展开
-
Java类的加载过程
概述在Java语言中,类型的加载、连接和初始化过程都是在程序运行期间完成的,这种策略虽然会令类加载时稍微增加一些性能开销,但是会为Java应用程序提供高度的灵活性,Java里天生可以动态扩展的语言特性就是依赖运行期动态加载和动态链接这个特点实现的。例如,如果编写一个面向接口的应用程序,可以等到运行时再指定其实际的实现类:用户可以通过Java预定义和自定义类加载器,让一个本地的应用程序可以在运行时...原创 2020-03-07 16:50:03 · 505 阅读 · 0 评论 -
垃圾收集器如何判定对象可被回收
概述Java运行时内存会分为几个部分,这其中程序计数器、虚拟机栈、本地方法栈3个区域随线程而生,随线程而灭;栈中的栈帧随着对象死了吗在堆里面存放着Java世界中几乎所有的对象实例,垃圾收集器在对堆进行回收前,第一件事情就是要确定这些对象之中哪些还活着,哪些已经死了(不再被任何途径使用的对象)。引用计数算法书面解释:给对象添加一个引用计数器,每当有一个地方引用他时,计数器值加1,当引用失效...原创 2020-03-07 01:15:04 · 410 阅读 · 0 评论 -
一文搞懂Java内存回收算法
前言由于垃圾收集算法的实现涉及大量的程序细节,而且各个平台的虚拟机操作内存的方法又各不相同,因此本节不打算过多地讨论算法的实现,只是介绍几种算法的思想及其发展过程。标记-清除最基础的收集算法就是"标记-清除"算法,算法分标记和清除两个阶段:首先标记出所有需要回收的对象,在标记完成后统一回收所有被标记的对象。之所以说他是最基础的收集算法,是因为后续的收集算法都是基于这种思路并对其不足进行改...原创 2020-03-06 17:27:34 · 459 阅读 · 0 评论 -
Android面试题集锦(持续更新)
一、java熟练掌握java是很关键的,大公司不仅仅要求你会使用几个api,更多的是要你熟悉源码实现原理,甚至要你知道有哪些不足,怎么改进,还有一些java有关的一些算法,设计模式等等。(一)java基础面试知识点1) java中==和equals和hashCode的区别== 在用关系操作符 == 比较的是值本身;equals 比较两个对象的引用是否相等,即 是否指向同一个对象;hash...原创 2020-03-01 16:26:09 · 828 阅读 · 0 评论 -
这几年看过的书,都是经典书
原创 2020-02-20 11:47:35 · 197 阅读 · 0 评论 -
Java 泛型
1. 概述什么是泛型?为什么要使用泛型?泛型,即“参数化类型”。一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传递实参。那么参数化类型怎么理解呢?顾名思义,就是将类型由原来的具体的类型参数化,类似于方法中的变量参数,此时类型也定义成参数形式(可以称之为类型形参),然后在使用/调用时传入具体的类型(类型实参)。泛型的本质是为了参数化类型(在不创建新的类型的情况下,通过泛型指定的不同类型来...原创 2018-05-30 21:06:07 · 261 阅读 · 0 评论 -
Java序列化
序列化什么事序列化?简单来说,序列化就是将对象转化为字节流,反序列化就是字节流转化为对象。在Java中具体是如何来使用的呢?他是如何实现的?有什么优缺点?基本用法Serializable要让一个类支持序列化,只需要让这个类实现接口java.io.Serializable,Serializable没有定义任何方法,只是一个标记接口。声明实现了Serializable接口后,保存/读取对象就可以使用Ob翻译 2018-02-23 17:38:03 · 176 阅读 · 0 评论 -
安装apk解析包时出现错误(应用内更新)
最近遇到一个问题,有个别用户在应用内更新版本会出现解析包失败的情况,而且有的机型还是必现,浏览器下载就没问题,应用内就有问题,这就很让人费解,之前一直没关注过这种情况,但是用户就是上帝,有问题必须得解决啊!后来查了一些资料,发现想要解决这种情况还是有迹可循的,下面是总结的几种可能出现的情况,做了一些总结。1、JDK版本问题,比如jdk1.6环境下打包可正常安装,1.7环境打的包就不行解决办法是,需要原创 2017-07-24 10:59:05 · 62459 阅读 · 6 评论 -
OKHttp源码解析
Android为我们提供了两种HTTP交互的方式:HttpURLConnection和Apache Http Client,虽然两者都支持HTTPS,流的上传和下载,配置超市,IPv6和连接池,已足够满足我们各种http请求的需求,但更高效的使用http可以让您的应用运行更快、更节省流量。而OKHttp库就是为此而生。OkHttp是一个高效的HTTP库:支持SPDY,共享同一个Socket来处理同翻译 2017-06-27 18:29:53 · 399 阅读 · 0 评论 -
Android代码规范
命名规范包命名规范采用反域名命名规则,包名全部小写,连续的单词只是简单地连接起来,不使用下划线,一级包名为com,二级包名为xxx(可以是公司域名或者个人命名),三级包名根据应用进行命名,四级包名为模块名或层级名。如:com.isa.crm.activity | com.isa.crm.adapterJAVA类命名规范采用大驼峰式命名法,尽量避免缩写,除非该缩写是众所周知的,比如HTML,URL,翻译 2016-08-05 13:47:47 · 391 阅读 · 0 评论 -
View的绘制流程
View的绘制机制1、View树的绘制流程当Activity接收到焦点的时候,他会被请求绘制布局,该请求有Android Framework处理,绘制是从根节点开始,对布局树进行measure和draw。整个View树的绘制流程在ViewRoot.java类的performTraversals()函数展开,该函数所做的工作可简单概括为是否需要重新计算视图大小(measure)、是否需要重新安置视图的翻译 2016-03-14 17:19:34 · 321 阅读 · 0 评论 -
View的工作原理
1、初识ViewRoot和DecorView在正式介绍View的三大流程之前,我们必须先介绍一些基本概念,这样才能更好地理解View的Measuer、layout和draw的过程,本节主要介绍ViewRoot和DecorView的概念。ViewRoot对应于ViewRootImpl类,它是链接WindowManager和DecorView的纽带,View的三大流程均是通过ViewRoot来完成的。在翻译 2016-03-23 01:03:44 · 824 阅读 · 0 评论 -
安卓App热补丁动态修复技术介绍
当一个App发布之后,突然发现了一个严重bug需要进行紧急修复,这时候公司各方就会忙得焦头烂额: 重新打包App、测试、向各个应用翻译 2016-03-15 19:25:08 · 498 阅读 · 0 评论