Hola lo logico es llevarse la instancia en el constructor del JFrame, es lo mas prolijo desde el punto de vista de la programacion, y luego en el constructor igualarlo a un JFrame del mismo tipo declarado. Lo de usar varibles static y public para acceder a esos datos no es recomendable para nada. Fijate este ejemplo.
http://www.forosdelweb.com/f45/como-...jframe-561408/
Saludos