こいつをコンパイルして逆アセンブルしてみました。
逆アセンブル結果がこちら。
public void main(java.lang.String[]); flags: ACC_PUBLIC Code: stack=2, locals=3, args_size=2 0: iconst_1 1: istore_2 2: iload_2 3: iconst_2 4: iadd 5: istore_2 6: return LocalVariableTable: Start Length Slot Name Signature 0 7 0 this LPlusScala$; 0 7 1 args [Ljava/lang/String; 2 4 2 a I LineNumberTable: line 3: 0 line 4: 2
LocalVaribleTableとLineNumberTableってなんぞ。っていうはなし。
LineNumberTable はそのバイトコードとソース上の行番号の対応がかかれています。LocalVariableTable は、メソッド内で宣言した変数の名前などを保持したものです。 LineNumberTable と LocalVariableTable は主にデバッグ時に用いられ、実行時には不必要な属性です。
という説明なので、実際に読むときは必要のないものだったりするようです。
確かに、仕様書を読むとどちらもデバッガが見る情報みたいですね。