JVM_STACK 字节码指令运行 https://www.bilibili.com/video/BV1PJ411n7xZ?p=49 虚拟机栈虚拟机栈的出现背景 由于跨平台性的设计,Java的指令都是根据栈来设计的。不同平台CPU架构不同,所以不能设计为基于寄存器的【如果设计成基于寄存器的,耦合度高,性能会有所提升,因为可以对具体的CPU架构进行优化,但是跨平台性大大降低】。 优点是跨平台,指令集小,编译器容易实现, 2020-01-04 JAVA #JVM
JVM_RUNTIME [运行时数据区概述及线程]前言本节主要讲的是运行时数据区,也就是下图这部分,它是在类加载完成后的阶段 当我们通过前面的:类的加载 –> 验证 –> 准备 –> 解析 –> 初始化,这几个阶段完成后,就会用到执行引擎对我们的类进行使用,同时执行引擎将会使用到我们运行时数据区 运行时数据区结构运行时数据区与内存 内存是非常重要的系统资源,是硬盘和CPU的中间仓库及桥梁,承载着 2020-01-03 JAVA #JVM
JVM_Overview Mark word 虚拟机是通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。 JVM分类 https://www.zhihu.com/question/29265430/answer/43818804 元空间寸哪些数据? https://www.cnblogs.com/duanxz/p/3520829.html JVM整体结构 Java代码执行流程 2020-01-03 JAVA #JVM
AnimPropertyView 估值器(TypeEvaluator)设置动画 如何从初始值 过渡到 结束值 的逻辑 插值器(Interpolator)决定 值 的变化模式(匀速、加速) 估值器(TypeEvaluator)决定 值 的具体变化数值 ValueAnimator实现原理 : 通过不断控制 值的变化, 再不断赋值给对象的属性,从而实现动画的效果。 从上面原理可以看出:ValueAnimator类中有3个重要方法 2019-12-29 anim
AnimationView View Animation第一种就pass了,看下View Animation: You can use the view animation system to perform tweened animation on Views. Tween animation calculates the animation with information such as the start poin 2019-12-26 anim
AnimBitmaps Overviewhttps://developer.android.com/training/animation Animate drawable graphicsThe first option is to use an Animation Drawable. This allows you to specify several static drawable files that will b 2019-12-25 anim
JCenterPublish nexus sonatype 主要步骤按照这个操作 https://www.gcssloop.com/gebug/maven-private 注意: 密码不再是 admin admin 123了按照这个步骤 https://www.jianshu.com/p/fcb128e34c87 部署好一个平台后,sonatype-work复制过去,其他配置就不用再弄了,注意nexus-3.20.0-04 2019-12-13 TOOL
TEST_UNIT Test Driven Development MainPrinciple:Write the test case before the implementation of the function (only for unit tests) Write the function signature Write the test cases for the function Write the 2019-11-17 TEST #Test
SharedPreferences Question问题1sp初始化 是读取所有的文件,还是指定文件的数据。 问题2sp读取文件后会把数据保存到map中,如果后续我pusString() 数据了,还需要重新读取文件吗. 启动变慢sp可能导致启动变慢 : 12345678910private void startLoadFromDisk() { synchronized (mLock) { 2019-11-06 ANDROID
SurfaceView 我们知道View是通过刷新来重绘视图,系统通过发出VSSYNC信号来进行屏幕的重绘,刷新的时间间隔是16ms,如果我们可以在16ms以内将绘制工作完成,则没有任何问题,如果我们绘制过程逻辑很复杂,并且我们的界面更新还非常频繁,这时候就会造成界面的卡顿,影响用户体验,为此Android提供了SurfaceView来解决这一问题。 如果View需要频繁的刷新,或者刷新的数据量比较大,就需要使用S 2019-11-05 VIEW