Nadchodzi ClassCastException, ponieważ próbujesz rzutować klasę Time jako String. Pojawia się jako obiekt Date, ponieważ java.sql.Time i java.sql.Date są podklasami java.util.Date. Te podklasy są po prostu cienkimi opakowaniami (to samo z wystarczającą ilością dodatkowych informacji, które można zmapować na kolumny SQL). Tak więc w Swing JTable jest on używany jako java.util.Date, ponieważ typy java.sql są w większości nieistotne dla komponentów swingowych.