JAVA
文章平均质量分 90
流水mpc
这个人不是特别懒,不过他什么也没说。
展开
-
java面试题大全(整理版)
转载自:https://blog.csdn.net/yq714588944/article/details/79435816 这几天在网上搜集各种java面试题: 一是为了自己能复习方便,二是为了分享给大家~~ 题目都是来自网上大佬的分享,感谢大佬们的贡献~~ (持续更新中...) 1、面向对象的特征有哪些方面? - 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面。抽象只关注对象有哪些属性和行为,并不关注这些行为的细节是什么。 - 继承:继承是从已...转载 2021-01-06 10:40:44 · 394 阅读 · 1 评论 -
apk签名原理之Linux命令行计算hash-digest
鉴于网络较少资料描述apk签名中的hash摘要具体验证计算方法,本文主要通过Ubuntu命令行验证计算基于apk v1或v1+v2版本的MANIFEST.MF及CERT.SF中的hash-digest。 See more inhttps://gitlab.com/androidapkutils/apks/-/tree/master/signature-versions, below data are based on v1 and v1+v2 in this repository. ######..原创 2020-10-28 12:03:44 · 622 阅读 · 0 评论 -
HashMap和ArrayMap对比
HashMap和ArrayMap各自的优势 1.查找效率: HashMap因为其根据hashcode的值直接算出index,所以其查找效率是随着数组长度增大而增加的。 ArrayMap使用的是二分法查找,所以当数组长度每增加一倍时,就需要多进行一次判断,效率下降。 所以对于Map数量比较大的情况下,推荐使用 2.扩容数量: HashMap初始值16个长度,每次扩容的时候,直接申请双倍的数组空间。 ArrayMap每次扩容的时候,如果size长度大于8时申请size*1.5个长度,大于4小于8时申请8个,小于转载 2020-06-08 18:18:00 · 1268 阅读 · 0 评论 -
Android中使用Handler造成内存泄露的分析和解决
(一)什么是内存泄露? Java使用有向图机制,通过GC自动检查内存中的对象(什么时候检查由虚拟机决定),如果GC发现一个或一组对象为不可到达状态,则将该对象从内存中回收。也就是说,一个对象不被任何引用所指向,则该对象会在被GC发现的时候被回收;另外,如果一组对象中只包含互相的引用,而没有来自它们外部的引用(例如有两个对象A和B互相持有引用,但没有任何外部对象持有指向A或B的引用),这仍然属于不...转载 2020-04-10 14:42:51 · 128 阅读 · 0 评论 -
APK瘦身最佳实践(Google I/O '17)
本文内容主要来自Google I/O 17 Best Practices to Slim Down Your App Size (Google I/O '17),有删改。介绍现有的和Google新带来的一些给APK瘦身的方法(其实是拿之前做分享的PPT改的),文中使用Android Studio 3.0 预览版。 因文本内容的局限性,不能展示实际操作演示,想看具体的演示请点击上面的链接。 开始之...转载 2020-04-10 11:27:42 · 394 阅读 · 0 评论 -
Android APK瘦身方法小结
众所周知,APP包体的大小,会影响推广的难度,用户不太喜欢下载太大的APP,同类型同等功能的APP中往往是包体小的更受用户的青睐,所以降低包体是一项非常必要的事情,也是最近公司的APP需要降低包体,所以总结下自己知道的降低包体的方法。 一. 压缩图片 基本每个APP都需要用到相当多的图片,而这些图片在包体中了占据了不少的空间,特别是有些图片大小到达上百k的,加几张就吃不消,所以要对图片进行一定...转载 2020-04-10 11:12:43 · 681 阅读 · 0 评论 -
apk打包时去除无用资源
使用android studio的同学可以做以下操作来去除无用资源 1.检测无用资源的方式: 用android lint中Unused Resource 操作方法: 等待一会你就可以看到自己项目中有哪些资源是没有被用到的了 2打包时删除无用资源 build.gradle中设置: android{ … buildTypes{ release { minifyEnabl...转载 2020-04-10 11:10:26 · 787 阅读 · 0 评论 -
OOM 内存溢出的原因和处理方法
1 OOM的可能原因? 数据库的cursor没有及时关闭 构造Adapter没有使用缓存contentview RegisterReceiver()与unRegisterReceiver()成对出现 未关闭InputStream outputStream Bitmap 使用后未调用recycle() static等关键字 非静态内部类持有外部类的引用 context泄露 2 处理oom的优化方法...转载 2020-04-05 21:34:11 · 636 阅读 · 0 评论 -
OOM 内存溢出的原因和处理方法
1 OOM的可能原因? 数据库的cursor没有及时关闭 构造Adapter没有使用缓存contentview RegisterReceiver()与unRegisterReceiver()成对出现 未关闭InputStream outputStream Bitmap 使用后未调用recycle() static等关键字 非静态内部类持有外部类的引用 context泄露 2 处理oom的优化方法...转载 2020-04-05 16:29:39 · 313 阅读 · 0 评论 -
关于OOM的那些事儿
最近查找了很多关于OOM,甚至于Java内存管理以及JVM的相关资料,发现这方面的东西太多了,竟有一种眼花缭乱的感觉,要想了解全面的话,恐非一篇文章能说清的,因此按照自己的理解整理了一篇,剩下的还需要继续学习。 1)什么是OOM?OOM,全称“Out Of Memory”,翻译成中文就是“内存用完了”,来源于java.lang.OutOfMemoryError。看下关于的官方说明:Throw...转载 2020-04-05 16:07:52 · 127 阅读 · 0 评论 -
java大神的成神之路
一、基础篇1.1 JVM1.1.1. Java内存模型,Java内存管理,Java堆和栈,垃圾回收http://www.jcp.org/en/jsr/detail?id=133http://ifeve.com/jmm-faq/1.1.2. 了解JVM各种参数及调优1.1.3. 学习使用Java工具jps, jstack, jmap, jconsole, jinfo, jhat, javap, …h...转载 2018-07-01 11:26:43 · 1628 阅读 · 0 评论