类加载的生命周期
发表于|更新于
|浏览量:
类加载的生命周期是从类被加载到内存开始,知道卸载出内存为止。整个生命周期分为7个阶段:加载,验证,准备,解析,初始化,使用,卸载。其中,验证,准备,解析三部分统称为连接,具体步骤如下图所示
文章作者: 无知的小狼
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 无知的小狼!
相关推荐
2019-06-30
redis的安装和一些常用的配置
首先推荐一下redis的中文网站:http://www.redis.cn。 123456789101112131415161718192021222324252627282930313233343536373839--下载源码包$ wget http://download.redis.io/releases/redis-4.0.6.tar.gz --解压$ tar -zxvf redis-4.0.6.tar.gz--到解压目录$ cd redis-4.0.6--编译$ make--到src目录将下面三个文件copy$ cd /usr/local/redis-4.0.6/src$ mkdir /usr/local/redis4/ $ cp redis-server /usr/local/redis4/ $ cp redis-benchmark /usr/local/redis4/ $ cp redis-cli /usr/local/redis4/--进入上一级目录将redis.conf也copy到redis4$ cd ..$ cp redis.conf /u...
2019-06-30
Redis数据库的基本语法(1)
REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Map), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。Redis 键(key)下表给出了与 Redis 键相关的基本命令: 序号 命令 描述 1 DEL key 该命令用于在 key 存在时删除 key。 2 DUMP key 序列化给定 key ,并返回被序列化的值。 3 EXISTS key 检查给定 key 是否存在。 4 EXPIRE key seconds 为给定 key 设置过期时间。 5 EXPIREAT key timestamp EXPIREAT ...
2019-06-30
红黑树
在看jdk的HashMap的代码的时候,看到了jdk8的实现方式用到了红黑树,然后,就看了一下。 废话少讲,开始红黑树的简介。 红黑树的特性 1.每个节点或者是黑色,或者是红色。 2.根节点是黑色。 3.每个叶子节点是黑色。 [注意:这里叶子节点,是指为空的叶子节点! 4.如果一个节点是红色的,则它的子节点必须是黑色的。 5.从一个节点到该节点的子孙节点的所有路径上包含相同数目的黑节点。 红黑树的添加: 第一步: 将红黑树当作一颗二叉查找树,将节点插入。 第二步:将插入的节点着色为”红色”。 第三步: 通过一系列的旋转或着色等操作,使之重新成为一颗红黑树。 伪代码: 123456789101112131415161718RB-INSERT(T, z) 01 y ← nil[T] // 新建节点“y”,将y设为空节点。02 x ← root[T] // 设“红黑树T”的根节点为“x”03 while x ≠ nil[T] // 找出要插入的节点“z”...
2019-06-30
如何把码云上的项目克隆到本地,以及本地如何提交到远程的码云仓库
由于刚刚接触码云不久,github几乎也没有使用过。所以在操作git的过程中还是碰到了一些问题。现在把这些问题拿出来和大家分享一下。 1、在码云上新建一个项目。 2、拿到的地址类似于: 1git@gitee.com:------git 3、在gitbash中进行clone,将服务器端的项目检出 12git clone git@gitee.com:------git 上面的地址 4、检出的项目就有了.git这个这个文件夹。和svn的操作类似。在你检出的目录就是你本地的repository。5、代码进行修改,或者新增文件之后执行 1git init 初始化你的项目 6、声明用户名 1git config --global user.name "xxx",谁修改的 7、声明邮箱 1git config --global user.emali "xx@xx.com 码云账号 8、然后就是必须要执行的操作了 1git add . 不要忘记".";添加到仓库 9、 1git commit -m '内容' 解释提交代码 1...
2019-09-07
今天写一篇教程
废话不多说,首先登陆你的服务器,putty之类的 依次运行以下命令123wget --no-check-certificate -O shadowsocks-all.sh https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks-all.shchmod +x shadowsocks-all.sh./shadowsocks-all.sh 2>&1 | tee shadowsocks-all.log 出现找不到weget的提示的时候123wget --no-check-certificate -O shadowsocks-all.sh https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks-all.shchmod +x shadowsocks-all.sh./shadowsocks-all.sh 2>&1 | tee shadowsocks...
2019-06-30
分享一个很有意思的异常
有这样一段代码: 12345678910111213try{ pageQueryResult = customerInfoImpl.getCustomList(customRequese,pageIndex,pageSize); if(pageQueryResult==null){ Exception.throwCommonException(CustomerInfoImpl.error); }}catch (Exception e){ e.printStackTrace();}``` 这里面 Exception.throwCommonException(CustomerInfoImpl.error);是自定义的弹框异常,捕捉到这个异常之后会有错误的弹框提醒,错误信息是CustomerInfoImpl.error但是实际的运行情况是执行完try之后,然后执行的是catch,然后抛出的异常就变成e.printStackTrace();显示的异常信息就变成了平台异常,没有捕捉到正确的...
评论
