logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

由常量池 运行时常量池 String intern方法想到的(一)

最近在看《深入理解java虚拟机》,看到了常量池(Constant Pool Table)和运行时常量池(Runtime Constant Pool)这两个概念,对这两个概念不是很理解。又看到了String类的intern方法,intern方法也没用过。于是,查了查,记录如下。以后遇到了问题之后,写blog时,先下问题的结论。结论常量池这个概念是针对java class文件而言的。当java代码

java方法调用之重载、重写的调用原理(一)

前一段时间看了《深入理解JVM》第三部分虚拟机执行子系统的内容,看到了重载与重写在JVM层面的调用原理(详见8.3 方法调用一节),但是没有写成博客总结一下,这里讨论讨论。在讨论过程中,难免会涉及到 字节码指令 相关的内容,这部分内容请查看博文:由常量池 运行时常量池 String intern方法想到的(二)之class文件及字节码指令。结论1.重载(overload)方法对重载方法

#jvm#java
Linux Mint Cinnamon17.2 64位 安装与各种配置

很早就想安装这个系统,今天终于把它装好了。安装方式使用U盘安装的。基于win7。1.制作U盘启动映像使用ultraISO。这个软件需要你注册,如果只用这一次就不要注册了,直接试用就可以了。2.使用win7自带的磁盘管理(我的电脑-管理-磁盘管理)我是从D盘里压缩出来了大约50G(50000M)的空间,不给他分配盘符。3.重启系统,从U盘启动就可以了。4.在安装时,遇到

子list中的顺序会影响list的顺序问题

最近在看《Thinking in Java》中关于容器的章节(第11章 持有对象),有一个例子发现subList中数据顺序的改变会影响原list中数据的顺序。下面总结如下。结论使用List.subList方法得到的子序列其实只是将指针指向了原list,并设置了这个sub list的大小。使用Arrays.asList(数组的引用)这种方式生成链表时,该链表仍然指向这个数据,因此,对这个链表中数据

#java#list
关于set想说的(一)之Set的实现类及必要的方法

最近看到了《Thinking in Java》的第17章 容器深入探究,17.6 Set和存储顺序。自己写了写测试代码,加深下理解。主要设计toString()方法(主要是为了方便打印),equals()方法,hashCode()方法,compareTo()方法。结论首先明确Set接口有三种不同的实现,HashSet()、TreeSet()、LinkedHashSet()。HashSet() :

#java
关于快速报错fail-fast想说的之fail-fast的实现原理(一)

最近在翻译HashMap的源码注释,看到了fail-fast。之前在看第四版《Thinking in java》的第17章容器深入研究 17.11.3中的“快速报错”时就有些迷迷糊糊,今天查了下资料,总结总结。注意,本文的讨论都是基于JDK 1.8的。结论快速报错,是指当有其他线程对一个容器(如ArrayList,HashMap)进行了结构性修改,另外一个线程在使用iterator进行迭代,那么

#java
理解CGI、FCGI、php-cgi、php-fpm的概念

CGI:common gateway interface 通用网关接口FCGI:fast common gateway interface 快速通用网关接口PHP-FPM:PHP-Fast CGI Process Managerphp-cgi是CGI协议的实现,PHP-FPM是FCGI协议的实现。CGI 就是web服务器如nginx跟后端动态脚本语言如PHP通信的协议接口。1.场景:浏览器请求we

#php
到底了