Potresti procedere in diversi modi:
usi un JFormattedField, espressioni regolari oppure sfrutti l'eccezione. Ti "illustro" brevemente quest'ultima ipotesi (che è anche la più semplice da realilzzare)
codice:try { double d = Double.parseDouble(textfield.getText()); } catch (Exception e) { textfield.setText("Invalid Number Format!"); textfield.requestFocus(); }