Mira, esa es la pregunta del millon, que todos nos hemos hecho alguna vez...
Si se puede hay programas que lo hacen, pero es un verdadero cacho...
Ahora, existe otra solucion... los ficheros .jar...
Consiste en que se comprimen todas las clases en un archivo .jar (es un formato de comprecion como ".zip") y luego se dirije hacia la clase principal, con lo que al final de crearlo y hacer un webeo mas o menos obtienes algo bastante similar a un .exe, osea, sin archivos bat, sin ventanas de DOS, sin ninguna de esas cosas... listo para pasarselos a quien quieras (o venderlo
)...
Eso, aqui te dejo un link a una pagina que explica como hacer uno...
http://programacion.com/java/tutorial/jar/