![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java进阶
Java进阶
耶low
这个作者很懒,什么都没留下…
展开
-
创建和销毁对象——避免创建不必要的对象
参考资料:《Effective Java》、《Java核心技术 卷1》基础回顾1.自动装箱我们常见的基本类型,如int、long、float等,都有一个对应的包装器类。这些包装器类的名字和它们也非常对应,如:Integer、Long、Float等。当我们像定义一个整型列表,但是尖括号里面是不允许写int的,这时候就需要用到Integer,如下:ArrayList<Int...原创 2019-11-10 11:48:00 · 151 阅读 · 0 评论 -
深入理解Java虚拟机第三版,总结笔记【随时更新】
最近一直在看《深入理解Java虚拟机》第三版,无意中发现了第三版是最近才发行的,听说讲解的JDK版本升级,新增了近50%的内容。这种神书,看懂了,看进去了,真的看的很快,并没有想象中的晦涩难懂,毕竟是公认的经典,作者书面描述能力肯定了得。虽然这种书,不会让你的代码能力马上提升,但是真正的让你知其然,还知其所以然。等遇到了这方面的问题,肯定不会像无头苍蝇一样,一头雾水,起码有一定的思路。...原创 2020-03-10 21:46:00 · 314 阅读 · 0 评论 -
Java高效编程:总结分享
参考资料:慕课网:Java高效编程收费实战课程、博客园、CSDN、菜鸟教程以及其他文档。篇幅受限,不太想针对每个点都写篇博客,有的地方可能写的不是很详细,一笔带过了。如果你觉得那个点在项目中用得上可以另行搜索一些相关的更详细的博客或文档。1.Lambda和函数式编程 函数式编程即可以把函数当作变量、参数、返回值传递。实现的方法就是定义一个函数式接口,函数式接口即只有一个抽象方法的...原创 2020-03-25 19:21:00 · 219 阅读 · 0 评论 -
手动搭建I/O网络通信框架1:Socket和ServerSocket入门实战,实现单聊
资料:慕课网 第二章:手动搭建I/O网络通信框架2:BIO编程模型实现群聊 第三章:手动搭建I/O网络通信框架3:NIO编程模型,升级改造聊天室 第四章:手动搭建I/O网络通信框架4:AIO编程模型,聊天室终极改造 这个基础项目会作为BIO、NIO、AIO的一个前提,后面会有数篇博客会基于这个小项目利用BIO、NIO、AIO进行改造升级。 简单的说一下io,了解的直...原创 2020-04-10 14:48:00 · 234 阅读 · 0 评论 -
手动搭建I/O网络通信框架2:BIO编程模型实现群聊
第一章:手动搭建I/O网络通信框架1:Socket和ServerSocket入门实战,实现单聊第三章:手动搭建I/O网络通信框架3:NIO编程模型,升级改造聊天室第四章:手动搭建I/O网络通信框架4:AIO编程模型,聊天室终极改造 在第一章中运用Socket和ServerSocket简单的实现了网络通信。这一章,利用BIO编程模型进行升级改造,实现群聊聊天室。 所谓BIO,就...原创 2020-04-11 19:40:00 · 147 阅读 · 0 评论 -
手动搭建I/O网络通信框架3:NIO编程模型,升级改造聊天室
第一章:手动搭建I/O网络通信框架1:Socket和ServerSocket入门实战,实现单聊第二章:手动搭建I/O网络通信框架2:BIO编程模型实现群聊第四章:手动搭建I/O网络通信框架4:AIO编程模型,聊天室终极改造 在第二章中用BIO编程模型,简单的实现了一个聊天室。但是其最大的问题在解释BIO时就已经说了:ServerSocket接收请求时(accept()方法)、...原创 2020-04-14 15:27:00 · 150 阅读 · 0 评论 -
手动搭建I/O网络通信框架4:AIO编程模型,聊天室终极改造
第一章:手动搭建I/O网络通信框架1:Socket和ServerSocket入门实战,实现单聊第二章:手动搭建I/O网络通信框架2:BIO编程模型实现群聊第三章:手动搭建I/O网络通信框架3:NIO编程模型,升级改造聊天室 上一章讲到的NIO编程模型比较主流,非常著名的Netty就是基于NIO编程模型的。这一章说的是AIO编程模型,是异步非阻塞的。虽然同样实现的是聊天室功能,但是...原创 2020-04-17 16:49:00 · 310 阅读 · 0 评论 -
Java并发编程:线程和锁的使用与解析
线程的使用 新建线程 新建一个线程有两种方法:继承Thread类,然后重写run方法;实现Runnable接口,然后实现run方法。实际上Thread类也是实现的Runnable接口,再加上类只能单继承,所以推荐使用Runnable接口。示例如下:class Demo1 implements Runnable{ @Override public void ...原创 2020-05-18 22:09:00 · 181 阅读 · 0 评论 -
Java并发编程:线程池ThreadPoolExecutor
多线程的程序的确能发挥多核处理器的性能。虽然与进程相比,线程轻量化了很多,但是其创建和关闭同样需要花费时间。而且线程多了以后,也会抢占内存资源。如果不对线程加以管理的话,是一个非常大的隐患。而线程池的目的就是管理线程。当你需要一个线程时,你就可以拿一个空闲线程去执行任务,当任务执行完后,线程又会归还到线程池。这样就有效的避免了重复创建、关闭线程和线程数量过多带来的问题。Java并发...原创 2020-05-19 20:31:00 · 191 阅读 · 0 评论 -
Java反射机制详解【作用+原理+API+示例用法】
作用 反射的定义:在运行状态中,能获取任意一个类的所有方法和属性;能调用一个对象的所有方法和属性。这种动态获取类信息和动态调用对象方法和属性的功能就是Java的反射机制。 注意定义中的措辞,是所有的方法和属性,即使是私有的也能调用。所以功能是非常强大的。但在我们日常开发中很少会用到反射机制,因为正是这种强大的机制反而会破坏我们应用代码的封装性。日常中不用不代表就没用,很多框架的设...原创 2020-06-03 14:06:00 · 662 阅读 · 1 评论