向上转型 向上转型:把对某个对象的引用视为对其基类型的引用的做法被称作为向上转型 后期绑定:在运行时根据对象的类型进行绑定,也叫作动态绑定或者运行时绑定;在Java中除了st...
向上转型 向上转型:把对某个对象的引用视为对其基类型的引用的做法被称作为向上转型 后期绑定:在运行时根据对象的类型进行绑定,也叫作动态绑定或者运行时绑定;在Java中除了st...
组合:只需要在新的类中产生已有类的对象,由于新的类是已有类的对象所组成,所以这种方法称为组合 继承:按照已有类的类型来创建新类,无需改变已有类的形式,采用已有类的形式并在其中...
赋值 基本数据类型赋值:基本数据类型存储了实际的数值,而并非指向一个对象的引用,所以在为其赋值的时候,是直接将一个地方的内容复制到另一个地方 对象赋值:对一个对象进行操作时,...
用引用操作对象 每种编程语言都有自己的操纵内存中元素的方式,在Java中一切都被视为对象,操纵的标识符实际上是对象的一个引用;可以将这一情形想象成用遥控器(引用)来操纵电视机...
如何判断一张图片是否为GIF图 根据后缀名判断:一般服务器返回图片时都有后缀名,这个时候我们可以根据文件的后缀名来判断;但是根据后缀名判断不可靠,有可能是用户手动修改的文件后...
startActivity() 流程分析 (SDK源码为28) 当我们从手机桌面点击应用图标时,这时候就会打开我们的应用程序,在这个过程中发生了什么事情,整个流程是怎么样的?...
前言 Android事件分发机制是Android开发者必须了解的基础 网上有大量关于Android事件分发机制的文章,但存在一些问题:内容不全、思路不清晰、无源码分析、简单问...
基本使用 添加依赖 定义Api请求接口仓库 发起网络请求 框架结构 RxJava的整体结构是一条链 链的最上游:生产者(被观察者) Observable/Single/Fl...
第一章:绪论 数据结构包含:逻辑结构,存储结构,对数据的运算逻辑结构:线性结构(线性表,栈,队列,串,数组,广义表)非线性结构(树,图,集合)物理结构(存储结构):顺序存储,...
起因 最近项目有个新的需求,就是社区要实现本地的视频录制,预览,上传然后社区播放的功能,由于之前项目重构的时候,为了节省时间 整个社区的功能都交由h5开发,现在要添加本地视频...
今天在开发的时候遇到了一个兼容性问题,原场景是我的项目是用的Support包,由于要实现自定义视频拍摄,时间比较紧,就寻找了一个开源项目(使用AndroidX开发),根据项目...
在Activity的onResume方法中view.post(Runnable)能获取到View宽高吗? 在Activity的onResume方法中view的post(Run...
在学习WebView的时候就知道了WebView会出现很多稀奇古怪的问题,真碰上的时候还是焦头烂额,很多问题的解决方案要在网上找很久很久很久。这里做了稍微全面的总结。 划重点...
Looper.loop为什么不会阻塞掉UI线程? Android中为什么主线程不会因为Looper.loop()里的死循环卡死? 进程:每个app运行时首先会创建一个进程,该...
哪些 Context调用 startActivity 需要设置NEW_TASK,为什么? 最常见的就是 Application 需要设置 NEW_TASK了,为什么需要呢? ...
它有什么能力和作用? 查看MessageQueue中的IdleHandler源码发现,当消息队列空闲时会执行IdleHandler的queueIdle()方法,该方法返回一个...
ThreadLocal 是用来存储指定线程的数据的,当某些数据的作用域是该指定线程并且该数据需要贯穿该线程的所有执行过程时就可以使用ThreadLocal存储数据,当某线程使...
变量修饰符 为什么App Module中的R.java文件的变量是final修饰而Lib Module中R.java文件却不是? R文件是由编译器自动生成,每个模块中的R文件...