Java
857技术社区
这个作者很懒,什么都没留下…
展开
-
Java 保存图片至本地 Base64
图片路径下载版本: public String saveImg(String img_url, String savename) { InputStream input = null; OutputStream os = null; try { URL url = new URL(img_url); // 打开URL连接 URLConnection con = url.o原创 2020-12-22 17:48:23 · 2234 阅读 · 0 评论 -
Java深入浅出之线程池
1、线程池的优势 (1)、降低系统资源消耗,通过重用已存在的线程,降低线程创建和销毁造成的消耗; (2)、提高系统响应速度,当有任务到达时,通过复用已存在的线程,无需等待新线程的创建便能立即执行; (3)方便线程并发数的管控。因为线程若是无限制的创建,可能会导致内存占用过多而产生OOM,并且会造成cpu过度切换(cpu切换线程是有时间成本的(需要保持当前执行线程的现场,并恢复要执行线程的现场))。 (4)提供更强大的功能,延时定时线程池。 2、线程池的主要参数 public ThreadPoolEx原创 2020-06-30 16:22:44 · 3976 阅读 · 0 评论 -
Java深入浅出之HashMap
HashMap 是使用频率最高的类型之一,同时也是面试经常被问到的问题之一,这是因为 HashMap 的知识点有很多,同时它又属于 Java 基础知识的一部分,因此在面试中经常被问到。 HashMap 底层是如何实现的?在 JDK 1.8 中它都做了哪些优化? 在 JDK 1.7 中 HashMap 是以数组加链表的形式组成的,JDK 1.8 之后新增了红黑树的组成结构,当链表大于 8 并且容量大于 64 时,链表结构会转换成红黑树结构,它的组成结构如下图所示: 数组中的元素我们称之为哈希桶,它的原创 2020-05-26 14:39:01 · 245 阅读 · 0 评论 -
Java深入浅出之String
String 是如何实现的?它有哪些重要的方法? 以主流的 JDK 版本 1.8 来说,String 内部实际存储结构为 char 数组,源码如下: publicfinalclassString implementsjava.io.Serializable,Comparable<String>,CharSequence{ //用于存储字符串的值 privatefinalcharvalue[]; //缓存字符串的hashcode ...原创 2020-05-25 19:31:46 · 302 阅读 · 0 评论 -
Java深入浅出之线程
线程基本介绍 线程(Thread)是并发编程的基础,也是程序执行的最小单元,它依托进程而存在。一个进程中可以包含多个线程,多线程可以共享一块内存空间和一组系统资源,因此线程之间的切换更加节省资源、更加轻量化,也因此被称为轻量级的进程。 线程的状态有哪些?它是如何工作的? 线程的状态在 JDK 1.5 之后以枚举的方式被定义在 Thread 的源码中,它总共包含以下 6 个状态: NEW,新建状态,线程被创建出来,但尚未启动时的线程状态; RUNNABLE,就绪状态,表示可以运行的线程状态,它可能正原创 2020-05-25 19:11:18 · 147 阅读 · 0 评论 -
Java深入浅出之JVM内存模型
一、虚拟机的发展 HotSpot VM(SUN) 以前使用范围最广的Java虚拟机 JRockit VM(BEA) 号称”世界上最快的Java虚拟机” J9 VM(IBM) Dalvik VM( Google ) HotSpot VM(ORACLE) 目前使用范围最广的Java虚拟机 二、JVM的整体介绍 三、运行时数据区 这个是抽象概念,内部实现依赖寄存器、高速缓存、主内存(具体要分析 JVM 源码 C++语言实现,没必要看) 计算机的运行=指令+数据,指令用于执行方法的,数..原创 2020-05-24 11:35:46 · 592 阅读 · 0 评论 -
Java集合框架常见面试
1.HashMap 和 ConcurrentHashMap 的区别 ConcurrentHashMap对整个桶数组进行了分割分段(Segment),然后在每一个分段上都用lock锁进行保护,相对于HashTable的synchronized锁的粒度更精细了一些,并发性能更好,而HashMap没有锁机制,不是线程安全的。(JDK1.8之后ConcurrentHashMap启用了一种全新的方式实现,利用CAS算法。) HashMap的键值对允许有null,但是ConCurrentHashMap都不允许..原创 2020-05-23 22:45:17 · 200 阅读 · 0 评论