发布了文章2020-11-09
数组是固定的,集合是可变的;数组可以是基本类型,也可以是引用类型,但是集合只能是引用类型;数组只能存储同一种类型,集合可以存储不同类型(通常集合存储的也是同一种类型)。
发布了文章2020-10-27
2、 声明一个切入点(PointCut)切入点(pointcut)有助于确定要用不同通知执行的关联点(即方法)。在使用基于@AspectJ的配置时,切入点声明有两部分:
发布了文章2020-10-27
AOP是Spring的关键之一,面向切面编程,Spring AOP模块提供截取拦截应用程序的拦截器,例如,当执行方法时,可以在执行方法之前或之后添加额外的功能,比如,日志记录,权限管理,声明式事务,安全性和缓存等。
发布了文章2020-10-16
如果没有分代,那么所有的对象都会放在一块内存区域中,GC的时候寻找垃圾对象,就需要对整个内存区域进行扫描,这样会很大程度上影响GC效率,在Java中,很多对象都是 “朝生夕死” 的,如果把内存空间划分区域的话,将新创建的对象放到某个区域中,GC的时候优先回收这...
发布了文章2020-10-16
标记清除算法,顾名思义就是先标记,再清除,是最基础的一种垃圾回收算法,先标记就是说先把内存区域里的可回收的对象标记出来,然后把这些垃圾清除掉。就会腾出一片内存区域来,等待再次被使用,但是这样存在一个问题,就是内存碎片。
发布了文章2020-10-16
前面在jvm组成结构一文中,说到了GC和一些算法,那么在这篇文章里,就详细说说GC的常用算法。垃圾回收(Garbage Collection,GC),就是将垃圾回收,避免过于占用内存空间,导致内存泄漏,对内存堆中已经死亡或者长时间没有使用的对象进行清除和回收。既然是垃圾回收,...
发布了文章2020-10-16
每一个Java过程都离不开类的影子,那么类的加载过程是怎么样的呢?在介绍双亲委派机制的时候,不得不提ClassLoader。说ClassLoader之前,我们得先了解下Java的基本知识。 Java是运行在Java的虚拟机(JVM)中的,但是它是怎么就运行在JVM中了呢?我们编写的Java源代码被...
发布了文章2020-10-16
JVM是Java Virtual Machine(Java虚拟机)的缩写,是指负责将字节码解释成为特定的机器码进行运行,值得注意的是在运行过程中,Java源程序需要通过编译器编译为.class文件,否则JVM不认识。
发布了文章2020-10-14
使用 Spring Boot 很容易创建一个独立运行(运行 jar,内嵌servlet容器)、准生产级别的基于 Spring 框架的项目,使用 Spring Boot 可以不用或者只需要很少的 Spring 配置。SpringBoot 是 Spring框架对“约定优先于配置(Convention Over Configuration)”理念的最佳实...
发布了文章2020-09-29
final可以修饰类、变量、方法,修饰类表示类不可以被继承,修饰变量表示变量不可以被重新赋值,是一个常量,修饰方法表示这个方法是最终的,不能被重写。
发布了文章2020-09-29
HashSet中元素不重复,在向HashSet中add()元素时候,判断元素是否存在的依据,不仅要比较hash值,同时还要结合equles 方法比较。