Del tutorial de Java:
Cita: A Dialog window is an independent subwindow meant to carry temporary notice apart from the main Swing Application Window.... Every dialog is dependent on a Frame component. When that Frame is destroyed, so are its dependent Dialogs. When the frame is iconified, its dependent Dialogs also disappear from the screen. When the frame is deiconified, its dependent Dialogs return to the screen.
O sea, es una "sub-ventana" que es dependiente de otra, y su comportamiento por tanto, va en relación a la ventana de la que depende. Y quien es esa "otra" -> Pues la que le pasas en el constructor.
Si lees el API veras que si usas el constructor vacío, en realidad no estas creando un dialogo independiente, si no que se crea una ventana oculta para compartir ese tipo de diálogos.
S!