基础
枚举
异常
异常是指由于各种不期而至的情况,导致程序中断运行的一种指令流,如:文件找不到、非法参数、网络超时等。为了保证程序正常运行,在设计程序时必须考虑到各种异常情况,并正确的对异常进行处理。
error
Error 是程序中无法处理的错误,只能事先避免。表示运行应用程序中出现了严重的错误。此类错误一般表示代码运行时 JVM 出现问题,错误发生时,JVM 将终止线程。如 OutOfMemoryError 内存溢出、StackOverflowError栈溢出等。
exception
编译时异常
也叫检查时异常。Exception中除去运行时异常及其子类之外的异常。如果程序中出现此类异常,比如说IOException,必须对该异常进行处理,否则编译不通过。在程序中,通常不会自定义该类异常,而是直接使用系统提供的异常类。
- FileNotFoundException
- ParseException
- IOException
- ClassNotFoundException
运行时异常
也叫非检查时异常。RuntimeException类及其子类表示JVM在运行期间可能出现的错误。此类异常一般是由程序逻辑错误引起的,在程序中可以选择捕获处理,也可以不处理。
- IndexOutOfBoundsException
- NumberFormatException
- NullPointException
- ClassCaseException
- ArithmeticException
- IllegeArguementException
关键字
final
transient
- 此关键字标志此属性不被序列化,被此关键字修饰的字段,只会作用于内存,不会序列化到磁盘。
volatile
- 保证这个变量在多线程操作时的可见性,当某一线程更新了它的值,新值对于其他线程都是立即可见
- 禁止指令重新排序
native
命令
jps
查看所有的 Java 进程
javap
对编译后 class 文件进行操作
jstack
查看某个 Java 进程的(PID)的所有线程状态
jconsole
- 查看某个 Java 进程的线程运行情况
- 通过图形化界面连接
- 可以远程连接
shell
java -Djava.rmi.server.hostname=`ip地址` -Dcom.sun.management.jmxremote -
Dcom.sun.management.jmxremote.port=`连接端口` -Dcom.sun.management.jmxremote.ssl=是否安全连接 -
Dcom.sun.management.jmxremote.authenticate=是否认证 java类