Javaプログラムでは、
クラスをどこかのパッケージ内に書かなければなりません。
しかし、パッケージ指定しないクラスを書いてもエラーにはなりません。
その場合、パッケージ指定しないクラスは、
デフォルトのパッケージ と言うパッケージが自動で用意され、
そこに属します。
しかし、プログラムが分かりづらくなり、管理しにくくなります。
全てのクラスをどこかのパッケージに属するように管理しておけば、
import宣言も迷う事がありませんし、プログラムがキレイになりますので、
推奨される記述方法です。
一方、デフォルトのパッケージを使用すると、
「デフォルトのパッケージを使うとどんな問題が起きるんだ?」
と言うような事を考慮しなければならなくなります。
つまり、「百害あって一利なし」と言うワケです。
まぁしかし、パッケージなしのプログラムは入門者にとって理解しやすい。
と言う理由はあるかもしれませんが・・・
個人的には、なぜ「デフォルトのパッケージ」機能があるのか不思議です。