Java
文章平均质量分 87
孙强 Jimmy
小米汽车 Android 开发
展开
-
Android 开发:如何优雅引入 Java 8 Stream API
Java 8 的更新给我们带来了很多新的特性,例如 Stream API 等等,但是在 Android 开发中使用 Java 8 的这些 API 时,通常 Android Studio 会提示如下错误:Call requires API level 24(current min is xx)意思是说在 Android API 24 版本(Android 7.0)以上时才能使用这些方法,但是通...原创 2019-11-01 20:24:39 · 3179 阅读 · 2 评论 -
Java 8:一文掌握 Lambda 表达式
本文将介绍 Java 8 新增的 Lambda 表达式,包括 Lambda 表达式的常见用法以及方法引用的用法,并对 Lambda 表达式的原理进行分析,最后对 Lambda 表达式的优缺点进行一个总结。原创 2019-10-23 20:20:30 · 21206 阅读 · 23 评论 -
JVM:类加载的五个过程:加载、验证、准备、解析、初始化
类的整个生命周期包括加载、验证、准备、解析、初始化、使用和卸载7个阶段,其中验证、准备、解析这3个部分统称为连接,如下图所示。加载、验证、准备、初始化和卸载这5个阶段的顺序是确定的,而解析阶段则不一定,它在某些情况下可以在初始化阶段之后开始,这是为了支持Java语言的运行时绑定(也称为动态绑定或晚期绑定)。注意,这里的几个阶段是按顺序开始,而不是按顺序进行或完成的,因为这些阶段通常都是互相...原创 2019-07-26 11:36:43 · 4963 阅读 · 2 评论 -
Java 内存分区讲解
对于一个Java开发者,了解Java中的对象、变量等存放的内存区域是十分重要的。本文将全面讲解Java虚拟机中的内存模型和分区。Java虚拟机把管理的内存划分为几个不同的数据区域,如下图所示。下面就分别展开讲解一下每个区域的功能。1. Java堆Java堆是被所有线程共享的一块内存区域,在虚拟机启动时创建。此内存区域的唯一目的就是存放对象实例,所有的对象实例以及数组都要在堆...原创 2019-07-25 11:19:46 · 2623 阅读 · 8 评论 -
Java 多线程:彻底搞懂线程池
熟悉Java多线程编程的同学都知道,当我们线程创建过多时,容易引发内存溢出,因此我们就有必要使用线程池的技术了。原创 2019-07-09 19:27:00 · 191297 阅读 · 110 评论 -
《算法(第4版)》课后练习答案及相关问题解决方案
《算法(第4版)》一书的代码和课后练习的答案我都分享到了我的GitHub上面,地址如下:https://github.com/jimmysuncpt/Algorithms如果对您有帮助,觉得还不错,麻烦赏个Star吧!您也可以贡献您的代码,帮助完善这个项目,十分感谢哦!另外,分享另一个兄弟的可供参考:https://github.com/aistrate/AlgorithmsSedge原创 2016-11-18 21:42:20 · 36600 阅读 · 7 评论 -
Eclipse GUI构建工具:Jigloo
1. 3大GUI开发插件的特色Eclipse并不自带GUI的可视化开发工具,那么如果要在Eclipse中进行可视化的GUI开发,就需要依靠第三方的插件。1.1 Visual Editor Eclipse官方提供了一个叫做Visual Editor(VE)的开源GUI插件,功能还是比较强。可以根据用户的界面GUI设计,自动生成相应的Java代码。同样也可以通过相应的Java代码,生原创 2015-01-24 16:59:00 · 4180 阅读 · 1 评论 -
Windows安装Java环境JDK
首先打开浏览器,进入JDK的下载页面进行下载,网址为http://www.oracle.com/technetwork/java/javase/downloads/index.html。双击下载的exe文件,开始安装JDK,只要一直单击“下一步”按钮,即可完成安装。 安装完成后,要注意环境变量的设置。JDK中主要有两个相关环境变量,即PATH和CLASSPATH。 (1)首先回原创 2016-03-04 15:29:30 · 1488 阅读 · 0 评论