命令はいくつかの大まかな分類に分けられる:ロードおよびストア（例aload_0,istore）算術および論理（例ladd,fcmpl）型変換（例i2b,d2i）オブジェクト作成および操作（new,putfield）オペランドスタック管理（例swap,dup2）制御の移動（例ifeq,goto）メソッド呼び出しおよび復帰（例invokespecial,areturn）例外を投げたり同期を行うなどのように、多くのより専門化されたタスクのための命令もいくつか存在する。
指令可以基本分为以下几类：存储指令（例如：aload_0,istore）算术与逻辑指令（例如:ladd,fcmpl）类型转换指令（例如：i2b,d2i）对象创建与操作指令（例如：new,putfield）堆栈操作指令（例如：swap,dup2）控制转移指令（例如：ifeq,goto）方法调用与返回指令（例如：invokespecial,areturn)除此之外，还有一些更特殊的指令，作为异常抛出或同步等作用。