代码改变世界

随笔分类 - Java

XStream使用详解

2018-04-26 00:00 by faunjoe88, 235 阅读, 收藏, 编辑
摘要: http://www.cnblogs.com/LiZhiW/p/4313493.html http://www.studytrails.com/java/xml/xstream/xstream-introduction/ https://www.cnblogs.com/webyyq/p/671332 阅读全文

Unicode字符集和UTF-8, UTF-16, UTF-32编码

2018-03-09 23:40 by faunjoe88, 939 阅读, 收藏, 编辑
摘要: ASCII 在过去的计算中,ASCII码被用来表示字符。英语只有26个字母和其他一些特殊字符和符号。 下表提供了ASCII字符及其相应的十进制和十六进制值。 可以从上面的表中推断,在十进制数系统中,ASCII值可以表示为0到127。 让我们看一下0和127的二进制表示形式,在8位字节中。 0表示为 阅读全文

java的四舍五入

2018-02-08 15:56 by faunjoe88, 304 阅读, 收藏, 编辑
摘要: 四舍五入是我们小学的数学问题,这个问题对于我们程序猿来说就类似于1到10的加减乘除那么简单了。在讲解之间我们先看如下一个经典的案例: 这是四舍五入的经典案例,也是我们参加校招时候经常会遇到的(貌似我参加笔试的时候遇到过好多次)。从这儿结果中我们发现这两个绝对值相同的数字,为何近似值会不同呢?其实这与 阅读全文

理解java的三大特性之多态

2018-02-08 14:38 by faunjoe88, 247 阅读, 收藏, 编辑
摘要: 所谓多态就是指程序中定义的引用变量所指向的具体类型和通过该引用变量发出的方法调用在编程时并不确定,而是在程序运行期间才确定,即一个引用变量倒底会指向哪个类的实例对象,该引用变量发出的方法调用到底是哪个类中实现的方法,必须在由程序运行期间才能决定。因为在程序运行时才确定具体的类,这样,不用修改源程序代 阅读全文

深入分析 ThreadLocal 内存泄漏问题

2018-02-02 15:05 by faunjoe88, 286 阅读, 收藏, 编辑
摘要: 前言 ThreadLocal 的作用是提供线程内的局部变量,这种变量在线程的生命周期内起作用,减少同一个线程内多个函数或者组件之间一些公共变量的传递的复杂度。但是如果滥用 ThreadLocal,就可能会导致内存泄漏。下面,我们将围绕三个方面来分析 ThreadLocal 内存泄漏的问题 Threa 阅读全文

Java: System.exit() 与安全策略

2018-01-31 17:00 by faunjoe88, 1535 阅读, 收藏, 编辑
摘要: 说明 System.exit() 的本质是通知 JVM 关闭。 一般来说,有两种禁用 System.exit() 的办法: 安全管理器 安全策略 本质都是JRE 提供的本地实现,在执行之前进行权限判断。 因为System.exit() 是一种很暴力的手段,如果在 Client 模式下自己写个小程序无 阅读全文

【转】Java中关于WeakReference和WeakHashMap的理解

2018-01-31 16:36 by faunjoe88, 183 阅读, 收藏, 编辑
摘要: 新美大的10月11日的笔试中有一道选择题,让选择函数返回结果,代码如下: 运行结果是“cde”。 该题关键在考察WeakReference和WeakHashMap的理解。 先说下一点Java GC内容 在Java里, 当一个对象object被创建时,它被放在Heap里。当GC运行的时候,如果发现没有 阅读全文

使用@SuppressWarnings("unchecked")消除非受检警告

2018-01-31 11:36 by faunjoe88, 340 阅读, 收藏, 编辑
摘要: 使用泛型编程时,会遇到许多编译器警告,如:非受检强制转化警告,非受检方法调用警告,非受检普通数组创建警告,费受精转换警告.这次的内容就是遇到这些警告的时候你该怎么办 PS:非受检警告就是代码上黄色的感叹号 1.首先,要尽可能地通过泛型控制消除每一个非受检警告.这意味着你将不会在运行时出现ClassC 阅读全文

List环形双向链表

2018-01-16 00:58 by faunjoe88, 660 阅读, 收藏, 编辑
摘要: 实现一个环形的双向链表,链表的每个节点都保存三个信息,当前节点的值value,前一个节点的指针prev,后一个节点的指针next。因为是环形的,所以最后一个节点的next指向第一个节点,而第一个节点的prev指向最后一个节点 如果只存在一个节点,那么这个节点的prev和next都会指向这个节点本身。 阅读全文

对Java Serializable(序列化)的理解和总结

2018-01-15 17:18 by faunjoe88, 240 阅读, 收藏, 编辑
摘要: 1、序列化是干什么的? 简单说就是为了保存在内存中的各种对象的状态(也就是实例变量,不是方法),并且可以把保存的对象状态再读出来。虽然你可以用你自己的各种各样的方法来保存object states,但是Java给你提供一种应该比你自己好的保存对象状态的机制,那就是序列化。2、什么情况下需要序列化 a 阅读全文

Java中的关键字 transient

2018-01-15 16:29 by faunjoe88, 162 阅读, 收藏, 编辑
摘要: 先解释下Java中的对象序列化 在讨论transient之前,有必要先搞清楚Java中序列化的含义; Java中对象的序列化指的是将对象转换成以字节序列的形式来表示,这些字节序列包含了对象的数据和信息,一个序列化后的对象可以被写到数据库或文件中,也可用于网络传输,一般当我们使用缓存cache(内存空 阅读全文

关于Class.forName(“com.mysql.jdbc.Driver”) 密码保护

2018-01-12 15:30 by faunjoe88, 0 阅读, 收藏, 编辑
该文被密码保护。 阅读全文

Java JDBC 连接高版本的Oracle和MySql、SqlServer 的时候,不需要写Class.forName 方法 密码保护

2018-01-12 15:28 by faunjoe88, 0 阅读, 收藏, 编辑
该文被密码保护。 阅读全文

JDBC在getConnection之前为什么要调用Class.forName 密码保护

2018-01-12 15:24 by faunjoe88, 0 阅读, 收藏, 编辑
该文被密码保护。 阅读全文

解析Java finally 密码保护

2018-01-11 16:48 by faunjoe88, 0 阅读, 收藏, 编辑
该文被密码保护。 阅读全文

javap(反汇编命令)

2017-12-27 16:49 by faunjoe88, 398 阅读, 收藏, 编辑
摘要: 用法: javap <options> <classes> 其中, 可能的选项包括: -help --help -? 输出此用法消息 -version 版本信息 -v -verbose 输出附加信息 -l 输出行号和本地变量表 -public 仅显示公共类和成员 -protected 显示受保护的/ 阅读全文

JAVA字节码解析

2017-12-27 16:32 by faunjoe88, 1325 阅读, 收藏, 编辑
摘要: Java字节码指令 Java 字节码指令及javap 使用说明 ### java字节码指令列表 JVM指令助记符 变量到操作数栈:iload,iload_,lload,lload_,fload,fload_,dload,dload_,aload,aload_ 操作数栈到变量:istore,istor 阅读全文

jdbc驱动的类加载过程

2017-12-26 18:21 by faunjoe88, 776 阅读, 收藏, 编辑
摘要: 分析一下jdbc工作过程中涉及到的类加载流程,重点是想看看在双亲委派模型不适用的时候,如何解决。 第一步,加载数据库的驱动 Class.forName 方法会根据类的全路径名称去加载对应的class文件,生成类型,并初始化类型。也就是说static语句块会执行。 下面来看看 com.mysql.jd 阅读全文

GetClassLoader和GetCallerClass的使用

2017-12-26 18:14 by faunjoe88, 441 阅读, 收藏, 编辑
摘要: GetClassLoader是JAVA中用来得到ClassLoader的 JAVA中有以下几种ClassLoader. 1. Bootstrap ClassLoader - GetClassLoader的返回值为Null,是JVM的C++源码, Ext ClassLoader 的Parent 主要负 阅读全文

【转】Java虚拟机类型卸载和类型更新解析

2017-12-13 17:43 by faunjoe88, 347 阅读, 收藏, 编辑
摘要: 【摘要】 前面系统讨论过java类型加载(loading)的问题,在这篇文章中简要分析一下java类型卸载(unloading)的问题,并简要分析一下如何解决如何运行时加载newly compiled version的问题。 【相关规范摘要】 首先看一下,关于java虚拟机规范中时如何阐述类型卸载( 阅读全文