public class Test extends java.awt.Frame{
 public static void main(String[] args){
  new Test();
 }
 public Test(){
  //フレームの基本設定は省略。
  enableEvents(AWTEvent.MOUSE_EVENT_MASK);
  show();
  mainLoop();
 }

 private void mainLoop(){
  while(true){
   //処理は省略。
  }
 }

 public void processMouseEvent(MouseEvent e){
  //処理は省略。
 }

 //他のメソッドは省略。
}

こんな感じのプログラムを作ったのですが、無限ループにはまって何もできなくなるはずが、
なぜか普通にマウスイベント処理ができたので不思議に思っております。
言語仕様なのか自分の使ってるPCやOSのせいなのが気になって開発に力が入りません。
Java言語に詳しい人、教えて下さい。