Using JDialogs for child interfaces gives you flexibility that a JFrame does not. Ultimately, use what works best for what you're doing.