蜗牛大师

吴庆龙的学习笔记

导航

随笔分类 -  Java

上一页 1 2

JVM常用虚拟机命令汇总
摘要:title: JVM常用虚拟机命令汇总 comments: false date: 2019 07 22 11:45:33 description: 总结一下常用的JVM虚拟机启动命令。 categories: GC 概述 本文主要说明一些 JVM 启动命令的作用以及使用方法。 在 Java 程序启 阅读全文

posted @ 2019-07-24 12:13 蜗牛大师 阅读(442) 评论(0) 推荐(0)

理解GC日志
摘要:概述 每一种收集器的日志形式都是由它们自身的实现决定的,换而言之,每个收集器的日志格式都可以不一样,但是虚拟机的设计者为了方便用户阅读,将每个收集器的日志都维持一定的共性。 使用 -XX:+PrintGC 使用 -XX:+PrintGC 开启简单的 GC 日志。 以启动 SpringBoot 为例: 阅读全文

posted @ 2019-07-17 11:44 蜗牛大师 阅读(3725) 评论(2) 推荐(2)

Java 垃圾收集总结
摘要:概述 垃圾收集(Garbage Collection,GC),它不是Java语言的伴生产物,它的历史比Java还要久远。 人们主要思考GC需要完成的3件事情: 1. 哪些内存需要回收? 2. 什么时候回收? 3. 如何回收? 发展到现在,内存的动态分配与内存回收技术已经相当成熟。那么我们为什么还要去 阅读全文

posted @ 2019-07-15 18:37 蜗牛大师 阅读(340) 评论(0) 推荐(0)

使用Vim打开十六进制的文件
摘要:So Easy 这里使用打开 Hello.class 文件为例 首先使用 打开文件,然后在 Vim 的命令模式下输入 回车即可看见文件内容。 效果: 阅读全文

posted @ 2019-07-15 15:18 蜗牛大师 阅读(1670) 评论(0) 推荐(1)

jstat命令使用
摘要:jstat命令使用 jstat是JDK自带的一个轻量级小工具,全称“Java Virtual Machine statistics monitoring tool”,它位于java的bin目录下,主要利用JVM内建的指令对Java应用程序的资源和性能进行实时的命令行的监控,包括了对Heap size 阅读全文

posted @ 2019-05-23 17:31 蜗牛大师 阅读(580) 评论(0) 推荐(0)

Flyway数据表迁移框架的使用
摘要:[TOC] 1. 概述 Flyway是一个根据表结构快速生成数据表的工具,类似于Hibernate的自动生成表的特性。 官网: "https://flywaydb.org" 2. Maven配置 直接贴出配置 其中 配置项的值是存放sql文件的目录。 3. SQL文件规范 文件名由以下部分组成: 前 阅读全文

posted @ 2019-03-19 19:13 蜗牛大师 阅读(616) 评论(0) 推荐(0)

Java中的char占用几个字节
摘要:一、概述 网上或书上都说是 Java 中的 char 占用 2 个字节,一直没有深入,直到接触了编码,才对此产生了疑问,今天来深入一下这个问题。 二、答疑 char 在设计之初的时候被用来存储字符,可是世界上那么多字符,如果有 1 个字节,就意味着只能存储 256(28)个字符,显然不合适,而如果用 阅读全文

posted @ 2019-01-28 11:09 蜗牛大师 阅读(17545) 评论(0) 推荐(4)

浅谈Unicode编码
摘要:[TOC] 1.概述 对于ASCII编码,相信同学们都比较了解,那么对于Unicode、UTF 8和UTF 16,它们是怎么编码的呢?以及它们之间的关系是什么呢?它们与ASCII之间又有什么关系? 本文就来回答这两个问题。 2.ASCII编码 在学校学 C 语言的时候,了解到一些计算机内部的机制,知 阅读全文

posted @ 2019-01-28 11:06 蜗牛大师 阅读(689) 评论(2) 推荐(0)

Java运行时数据区
摘要:[TOC] 1. 概述 作为日常的Java开发者,可能对于Java内存堆有简单的了解,但是也是朦朦胧胧的,一些点不是很明确。本文就把堆内存中的每个空间说清楚,把每个空间内存储的内容说明白。 2. Java内存结构 用一张图片了解Java的内存结构。 其中一些空间是私有或者共享的: 线程私有:PC寄存 阅读全文

posted @ 2018-12-24 15:08 蜗牛大师 阅读(237) 评论(0) 推荐(0)

浅谈Java堆内存分代回收
摘要:[TOC] 1.概述 与C++不同的是, 在Java中我们无需关心对象占用空间的释放, 这主要得益于Java中的垃圾处理器(简称GC)帮助我们自动的进行对象占用空间的释放. 下面我们带着几个问题来学习: 堆内存是如何分代的? 各分代之间是如何配合工作的? 2.堆内存是如何分代的 用一张图片来描述(面 阅读全文

posted @ 2018-12-21 14:59 蜗牛大师 阅读(355) 评论(0) 推荐(0)

构造函数、静态变量、代码块执行顺序
摘要:[TOC] 1. 概述 本文主要分析在创建对象实例的时候, 类中构造方法的调用顺序或类中成员变量的赋值过程. 2. 构造函数/静态代码块/普通代码块 输出结果如下 从输出结果发现, 在创建一个对象的时候, 会发生如下的过程 1. 查找父类是否被加载过, 没有加载则进行加载, 这时静态代码块随之调用 阅读全文

posted @ 2018-10-09 11:38 蜗牛大师 阅读(257) 评论(0) 推荐(0)

Java泛型类型擦除以及类型擦除带来的问题
摘要:一、Java泛型的实现方法:类型擦除 大家都知道,Java的泛型是伪泛型,这是因为Java在编译期间,所有的泛型信息都会被擦掉,正确理解泛型概念的首要前提是理解类型擦除。Java的泛型基本上都是在编译器这个层次上实现的,在生成的字节码中是不包含泛型中的类型信息的,使用泛型的时候加上类型参数,在编译器 阅读全文

posted @ 2018-08-10 17:15 蜗牛大师 阅读(95038) 评论(30) 推荐(67)

上一页 1 2