Hola:
En el primer caso, no existe un constructor de DefaultTableModel que admita esos parámetros. Si quieres hacerlo así, debes crear dicho constructor.
En el segundo caso, no se puede poner código java fuera de los métodos, así que el for no se puede poner ahí.
Si sabes los tipos de las clases que va a ir dentro y son siempre los mismos, inicializa los tipos así
Código:
jTable1.setModel(new javax.swing.table.DefaultTableModel(datos, nombreColumnas) {
Class[] tipos = { Boolean.class, Integer.class, String.class, ... };
Por supuesto, pon los tipos que quieras y no estoy seguro de la sintaxis, la he puesto de memoria.
Un pequeño consejo, echa un ojo a un tutorial de java básico, para aprender la sintaxis y ver dónde se puede o no poner código, los constructores de las clases, etc.
Se bueno.