メソッド引数の括弧の中の話なんて誰もしていないと思うんだが
それにクラスメンバーにもともと式文はないから
空の式文が書けることがセミコロンをクラスメンバーとしている理由ではない
式や文を書くことがないクラスの外ならなおさらのこと
import宣言やpackage宣言は必ずimport 識別子 ; の形をしているので
セミコロンだけというものはない
> 空っぽのものも式であると定義して除外しない方が自然
だけど、それがクラス宣言の内外に無意味に見えるセミコロンを許している理由ではないと思うよ
セミコロンがパッケージ宣言やインポート宣言にあるとみなされる
;
import java.util.*;
public class Foo {}
はコンパイルエラーになる