在java开发中,难免要碰到一些问题会让自己迷惑,这个时候找朋友问问是个好办法,google一下也不错,但有些细节的问题,或者较新的问题从以上两种途径不容易找到答案,这个时候有些工具是能帮助你解决问题的。
javap ,反编译java class 成字节码,能解决很多JLS(Java Language Special)相关的问题,例如i=i++的问题. double-checked locking问题
另外一个好的工具是java -verbose
可以用java -verbose:gc 查看gc情况,查看虚拟机内存的使用情况,查看gc对自己程序的冲击
可以用java -verbose:class 查看自己的程序使用了多少class。一个有意思的应用见这里
Runtime,java中的Runtime能帮助你在调试的时候解决很多问题。
常用的有Runtime.getRuntime().maxMemory()
Runtime.getRuntime().exec()
Runtime.getRuntime().gc()
Runtime.getRuntime().getLocalizedInputStream(in)
等