ClassCastException è in arrivo perché stai tentando di eseguire il cast della classe Time come String. Appare come un oggetto Date perché java.sql.Time e java.sql.Date sono entrambe sottoclassi di java.util.Date. Queste sottoclassi sono solo wrapper sottili (stessa cosa con informazioni aggiuntive sufficienti per essere mappate su colonne SQL). Quindi in una Swing JTable viene utilizzato come java.util.Date poiché i tipi java.sql sono irrilevanti per lo swing dei componenti per la maggior parte.