泛型中的T、E、K、V,还记得嘛
前言 Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许开发者在编译时检测到非法的类型。 泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。 泛型带来的好处 在没有泛型的情况的下,通过对类型 Object 的引用来实现参数的“任意化”,“任意化”带来的缺点是要做显式的强制类型转换,而这种转换是要求开发者...
前言 Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许开发者在编译时检测到非法的类型。 泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。 泛型带来的好处 在没有泛型的情况的下,通过对类型 Object 的引用来实现参数的“任意化”,“任意化”带来的缺点是要做显式的强制类型转换,而这种转换是要求开发者...
聊聊TCP连接耗时的那些事儿 原创张彦飞allen开发内功修炼2020-11-08 08:00 收录于话题#开发内功修炼之网络篇30个 在互联网后端日常开发接口的时候中,不管你使用的是C、Java、PHP还是Golang,都避免不了需要调用mysql、redis等组件来获取数据,可能还需要执行一些rpc远程调用,或者再调用一些其它restful api。 在这些调用的底层,基本都是在使...
垃圾收集器 在java虚拟机中,垃圾回收器有一下几种: 串行垃圾回收器 并行垃圾回收器 GMS回收器 G1回收器 串行回收器只有一个工作线程,对于并行能力较弱的计算机来说,穿行回收器的专注性和独占性往往有更好的表现 并行回收器在串行回收器基础上做了改进,他可以使用多个线程同时进行垃圾回收,对于计算能力强的计算机而言,可以呀有效的缩短垃圾 回收所需的实际时间 ParNew回收...
垃圾收集算法 垃圾收集算法 垃圾收集算法 分代收集理论 复制算法 标记整理算法 标记清楚算法 分代收集理论 根据对象存活周期的不同将内存分为几块,一般将java分为新生代和老年代,这样就可以根据各个年代的特点选择合适的垃圾收集算法。 新生代 - 一般新生代中的对象存货周期很小吗,每次收集都会有大量的对象死去,所以选择复制算法,只需要付出少量对象的复制成本...
异常的处理顺序 结语: (假设方法需要返回值) java 的异常处理中, 在不抛出异常的情况下,程序执行完 try 里面的代码块之后,该方法并不会立即结束,而是继续试图去寻找该方法有没有 finally 的代码块, 如果没有 finally 代码块,整个方法在执行完 try 代码块后返回相应的值来结束整个方法; 如果有 finally 代码块,此时程序执行到 try 代码块里的 ...
JVM常用的垃圾回收算法 常用的GC算法 MarkSweep 标记清除算法 标记阶段:把垃圾内存标记出来清除阶段:直接将垃圾内存回收这种算法是比较简单的,但是会产生大量的内存碎片,可能导致大对象无法分配,并带来GC问题。 Copying 拷贝算法 将内存分为大小相等的两半,每次只使用其中一半。垃圾回收时,将当前这一块中存活的对象复制到另一半中,并将这一半全部清空。 没有内存碎...
JVM中的三色标记法 三色标记法是一种垃圾回收法,它可以让JVM不发生或仅短时间发生STW, 从而达到清除JVM内存垃圾的目的. JVM中的CMS, G1垃圾回收器所使用的垃圾回收算法即为三色标记法. 算法思想 三色标记法将对象的颜色分为了黑, 灰, 白 三种颜色 白色: 该对象没有被标记过(垃圾对象) 灰色: 该对象已经被标记过了, 但该对象下的属性没有全被标记完. (GC需要从...
GC Root如何确定一个对象是不是垃圾 有两种定位垃圾的方式 引用计数 这种方式是给堆内存当中的每个对象记录一个引用个数。引用个数为0的就认为是垃圾。这时早期JDK中使用的方式。引用计数无法解决循环引用的问题。 循环引用 有A、B两个对象,它们之间互相引用,但除此之外,外部并无其他引用,因此GC时不会清理这俩个对象,因此会产生内存泄露 根可达算法 这种方式是在内存中,从引用根...
参考文献:http://tomcat.apache.org/tomcat-8.0-doc/config/http.html#HTTP/1.1_and_HTTP/1.0_Support 整理一下springboot中的tomcat默认线程池配置 server: port: xxxx tomcat: uri-encoding: UTF-8 max-threads: 1000 #最大并...
jvm机理 jvm虚拟机 1.java虚拟机概述和基本概念 2.堆、栈、方法区 3.了解虚拟机参数 4.垃圾回收概念和算法、及对象分带转换 5.垃圾收集器 6.tomcat性能影响实验 7.性能监控工具 系统虚拟机和程序虚拟机 VMare属于系统虚拟机 jvm属于程序虚拟机 方法区:就是存放类信息、常量信息、常量池信息、包括字符串字面量和数字常量等。 java堆...