摘要: 类加载 | |new指令 | 检查加载(失败返回类加载) | | | 分配内存(指针碰撞、空闲碎片列表、) | | | 内存空间初始化(值的初始化 例如:boolean=false) | | | 设置(对象头,类型等) | | | 初始化 | | | 逃逸分析——满足逃逸分析,分配到栈 | |不满足 阅读全文
posted @ 2020-11-22 10:20 金大人的梦 阅读(54) 评论(0) 推荐(0) 编辑
摘要: java文件经过编译变成class文件,通过类加载器加载到JVM里面运行 JVM里面有一个重要组成部分就是运行时数据区 运行时数据区包括线程共享部分(堆、方法区),和线程私有部分(程序计数器、本地方法栈、虚拟机栈) 堆:存放对象实例 有eden区、from区、to区、老年代区(内存分配比例 8:1: 阅读全文
posted @ 2020-11-22 09:25 金大人的梦 阅读(106) 评论(0) 推荐(0) 编辑
摘要: Android类加载器进行类加载的时候,会先把所有APK下的.dex文件放入一个Element数组里面,然后通过foreach循环,查找我们要加载的类所在的.dex文件,然后加载该类,之后return出循环。 那么当我们某个类发现BUG之后,我们通过APP网络下载补丁包的方式,将我们重新写的没有BU 阅读全文
posted @ 2020-11-21 17:16 金大人的梦 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 发生的两种情况 1.当队列元素满的时候,往队列里面放元素会受到阻塞。 2.当队列里面没有元素的时候,往队列里面取元素会取不到,从而导致阻塞在此,一直等待元素的到来。 应用场景:生产者和消费者模式 生产者和消费者之间增加队列(BlockingQueue),相当于是添加了一个中间商,让两者做到解耦。 B 阅读全文
posted @ 2020-11-21 11:09 金大人的梦 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 线程的启动方式只有两种 继承Thread类,X extends Thread;然后X.start 实现Runnable接口,X implements Runnable;然后交给Thread运行 注:在Thread源码中的注释里面表面,新启线程的方式只有以上两种。但是缺少一项功能,那就是当线程完成后, 阅读全文
posted @ 2020-11-19 14:56 金大人的梦 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 1、注解的定义 注解的作用和意义 注解本身并没有任何意义,单独的注解就是一种注释而已。例如我们常见的@override只表示重写父类方法并无其他作用,他需要结合其他技术,例如反射、插桩等技术才有意义。 Java注解(Annotation)又称Java标注,是JDK1.5引入的一种注释机制。是元数据的 阅读全文
posted @ 2020-11-17 16:33 金大人的梦 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 1、为什么要使用泛型? (1)适用于多种数据类型执行相同的代码,利于封装(如,封装Base类、统一的适用于recycleview的adapter等) (2)泛型中的类型在使用的时候,直接指定即可,不需要进行强制转换。数据转换是很容易带来数据异常的,尤其是当服务端传过来的数据与我们接收的数据类型不同的 阅读全文
posted @ 2020-11-16 16:11 金大人的梦 阅读(248) 评论(0) 推荐(0) 编辑
摘要: 数据(Model): 数据+对数据进行的操作(不依赖视图的操作) 视图(View):不同的模式有不同的定义,相当于xml+activity+fragment = view合集 逻辑(X): view和model的通信和交互 mvc 优点(对比一个文件打天下):抽离了model 缺陷:controll 阅读全文
posted @ 2020-08-22 10:53 金大人的梦 阅读(328) 评论(0) 推荐(0) 编辑
摘要: 1、面向对象六大开发原则 单一职责原则:一个class(文件)只做一件事 开闭原则:开放继承,封闭修改 里氏替换原则:不能改变基类的逻辑 依赖倒置原则:两个模块或组件相互通信,只依赖接口,不依赖实现 接口隔离原则:接口最小化,只跟需要建立通信的类建立接口 迪米特原则:最小支持原则(A与B建立接口相互 阅读全文
posted @ 2020-08-12 10:38 金大人的梦 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 什么是AQS? 队列同步器AbstractQueuedSynchronizer(以下简称同步器或AQS),是用来构建锁或者其他同步组件的基础框架,它使用了一个int成员变量表示同步状态,通过内置的FIFO队列来完成资源获取线程的排队工作。并发包的大师(Doug Lea)期望它能够成为实现大部分同步需 阅读全文
posted @ 2020-06-29 14:35 金大人的梦 阅读(365) 评论(0) 推荐(0) 编辑