- 博客(11)
- 资源 (57)
- 收藏
- 关注
原创 java类的热加载
这两篇文章分别介绍了类的生命周期、ClassLoader类。今天,我们继续介绍类的热加载。https://blog.csdn.net/liuxiao723846/article/details/109901300https://blog.csdn.net/liuxiao723846/article/details/110009055一、类的卸载1、引用关系:当某个类被类加载器加载到内存后,就会生成一个相应的Class对象。他们的关系如下:1)类加载器和Class对象:在类加载器的
2020-11-28 19:30:18 2165 1
原创 java.lang.ClassLoader类介绍
这篇文章介绍了java的类加载机制(https://blog.csdn.net/liuxiao723846/article/details/109901300),本文重点介绍ClassLoader类是如何对类进行加载的。ClassLoader 类是负责加载类的,是一个抽象类。除了启动类加载器,所有的类加载器都继承自ClassLoader。1、获取ClassLoader对象:获取当前类的classLoader:claszz.getClassLoader() 获取系统的classLoader(应用
2020-11-25 17:53:51 922 1
原创 sun.reflect.Reflection介绍以及@CallerSensitive注解
sun.reflect.Reflection 这个工具类是和反射相关的,我第一次见到这个方法是在java.sql.DriverManager中的getConnection方法中见到的:@CallerSensitivepublic static Connection getConnection(String url, String user, String password) throws SQLException { java.util.Properties info = n
2020-11-23 21:43:00 3093 1
原创 java类生命周期
在聊java 类加载机制之前,需要了解java字节码,见:https://blog.csdn.net/liuxiao723846/article/details/109156658类(.java文件)首先被编译成字节码(.class文件),从字节码被JVM加载到内存开始,到卸载出内存结束,生命周期为:加载>验证>准备>解析>初始化>使用>卸载,其中验证、准备、解析称作连接。和那些编译时需要连接工作的语言不同,在java中类的加载和初始化都是在程序运行时期.
2020-11-21 17:07:30 749 3
转载 Java各种日志框架使用示例
序在实际的开发过程中,为什么Java的日志体系总会给编程人员一种混乱的感觉,根本的原因是因为Java的日志体系没有统一的实现和使用标准。比如正在开发的系统使用的日志框架为Slf4j和Logback,系统中所依赖第三方Jar使用的日志框架为JCL(Apache Common Logging),JUL(Java Util Logging),Log4j或Log4j2。因为日志输出格式不统一,无形中增加了系统维护成本和问题排查的难度。日志框架下面针对各个日志框架或日志的实现,通过代码的形式,详细的演示如
2020-11-19 15:09:04 565
原创 SLF4J源码分析
介绍官网:http://www.slf4j.org/github:https://github.com/qos-ch/slf4jSLF4J(Simple Logging Facade for Java),它为Java的日志系统提供了一套统一的接口(门面),即:作为各种日志框架(java.util.logging,logback,log4j)的抽象。通过引入SLF4J,可以使项目与logging具体的实现分离,在提供了一致的接口的同时,提供了灵活选择logging实现的能力。(引入SLF4J的
2020-11-19 14:56:40 1697
转载 alpha、beta、rc各版本区别
1、开源软件在发布时,会根据不同阶段发布不同的产品,常见的有如下:alpha版:内部测试版。α是希腊字母的第一个,表示最早的版本,这个版本包含很多BUG,功能也不全,主要是给开发人员和 测试人员测试和找BUG用的。beta版:公开测试版。β是希腊字母的第二个,顾名思义,这个版本比alpha版发布得晚一些,主要是给“部落”用户和忠实用户测试用的,该版本任然存 在很多BUG,但是相对alpha版要稳定一些。这个阶段版本的软件还会不断增加新功能。如果你是发烧友,可以下载这个版本。rc版:全写:Rele
2020-11-18 23:13:38 1543
转载 Apache-Commons包作用说明
1. Commons BeanUtils提供对Java反射和自省API的包装。依赖包:Commons Codec、Commons Logging2.Commons Codec是编码和解码组件,提供常用的编码和解码方法,如DES、SHA1、MD5、Base64、URL和Soundx等。3.Commons Collections是一个集合组件,扩展了Java标准Collections API,对常用的集合操作进行了很好的封装、抽象和补充,在保证性能的同时大大简化代码。4.C
2020-11-18 17:26:00 1180
原创 git stash命令
使用git的时候,我们往往使用分支(branch)解决任务切换问题,例如:我们往往会建一个自己的分支去修改和调试代码,如果别人或者自己发现原有的分支上有个不得不修改的bug,我们往往会把完成一半的代码commit提交到本地仓库,然后切换分支去修改bug,改好之后再切换回来(因为直接切回原分支,工作区的修改或者暂存区中的修改会被带到原分支中)。类似这种完成一半或者不完善的代码,最好是不要 提交,因为这样的话往往log上会有大量不必要的记录。这时,可以使用git stash将当前未提交到本地的代码推入到Gi
2020-11-14 16:03:31 380 1
原创 git diff 命令
git diff 命令可以对比两个版本的差异,具体来说包括:本地工作区和暂存区的diff信息:git diff 或者 git diff file 暂存区和版本库的diff信息(使用git add 将工作区修改保存到了暂存区后):git diff --cached 版本库中不同commit、分支的diff信息(使用git commit 将暂存区修改提交到了版本库):git diff commit1 commit2 或 git diff branch1 branch2技巧:一般将要对比的分支/comm
2020-11-14 12:17:59 38143
原创 git 基本命令操作
1、下载代码:git clone https://...或者git clone ssh://...2、获取最新代码、拉取分支:在团队开发中,存在多人协作开发的情况。通常,我们会在自己的开发分支中写代码,然后测试无误后发起merge request,将代码合并到master分支(master分支设置成受保护的,不允许将代码直接提交到master)。所以,我们首先从master上获取最新的代码,然后在上面拉取分支、开发。2.1)查看远程仓库:$ git remote -vorigi
2020-11-07 19:38:12 1210
macOS eclipse Launcher
2023-12-18
parquet-tools-1.6.0rc3.zip
2020-07-24
jQuery-Plugin-For-Easily-Readable-JSON-Data-Viewer.zip
2019-12-31
yesmeck-jquery-jsonview-v1.2.3-14-g01b1eb8.zip
2019-12-30
linux解析json工具——jq
2017-09-16
jquery 全屏显示插件
2015-03-20
apache-maven-3.2.3-bin
2014-10-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人