Executando o metodo de um JFrame num JDialog

Bom, ainda não consegui fazer este procedimento, é simples mas estou meio perdido.
tenho esta clase como principal

import javax.swing.JFrame;

public class Vendas extends JFrame {
    private static FechamentoVenda fechamento;

    public Vendas() {
        super();
        initComponents();
        setResizable(false);
    }
    public  void mostraFechamento(){
            fechamento = new FechamentoVenda(this, true);
            fechamento.setVisible(true);
    }
    public void limparComponentes(){
        lista.clear();
        txtBarra.setText("");
        btnDescricao.setText("");
        btnValor.setText("");
        btnValorTotal.setText("");
    }
    public static void main(String args[]) {
         Vendas janela = new Vendas();
         janela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
         janela.setResizable(false);
         janela.setExtendedState(Vendas.MAXIMIZED_BOTH);
         janela.setVisible(true);
   }
}
public class FechamentoVenda extends javax.swing.JDialog {
   
    @SuppressWarnings("LeakingThisInConstructor")
    public FechamentoVenda(java.awt.Frame parent, boolean modal) {
        super(parent, modal);
        initComponents();
        setLocationRelativeTo(this);
    }
	// Botao que chama este Evento q vai limpar os componentes do Vendas
	// Se eu executar desta forma vai da erro nullException por q nao instanciei o v
	// Se eu instanciar o v = new Vendas(); nao vai limpara, nao como fazer 
    public void limpar(Vendas v){
        v = venda;
        v.limparComponentes();
    }


    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                FechamentoVenda dialog = new FechamentoVenda(new javax.swing.JFrame(),true);
                dialog.addWindowListener(new java.awt.event.WindowAdapter() {
                    public void windowClosing(java.awt.event.WindowEvent e) {
                        System.exit(0);
                    }
                });
                dialog.setVisible(true);
            }
        });
    }

Este sao partes do meu codigo, o q preciso é chamar o metodo limparComponentes no Vendas
Help Please.

[code]public class FechamentoVenda extends javax.swing.JDialog {
private Vendas vendas;
@SuppressWarnings(“LeakingThisInConstructor”)
public FechamentoVenda(Vendas parent, boolean modal) {
super(parent, modal);
this.vendas = parent;
initComponents();
setLocationRelativeTo(this);
}
// Botao que chama este Evento q vai limpar os componentes do Vendas
// Se eu executar desta forma vai da erro nullException por q nao instanciei o
// Se eu instanciar o v = new Vendas(); nao vai limpara, nao como fazer
public void limpar(Vendas v){
vendas.limparComponentes();
}

public static void main(String args[]) {
    java.awt.EventQueue.invokeLater(new Runnable() {
        public void run() {
            FechamentoVenda dialog = new FechamentoVenda(new javax.swing.JFrame(),true);
            dialog.addWindowListener(new java.awt.event.WindowAdapter() {
                public void windowClosing(java.awt.event.WindowEvent e) {
                    System.exit(0);
                }
            });
            dialog.setVisible(true);
        }
    });
}

[/code]

eu setei as alterações q vc passou mas agora ta dando erro no main

    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                //new FechamentoVenda(new javax.swing.JFrame(), true, venda);
                FechamentoVenda dialog = new FechamentoVendaFe(new javax.swing.JFrame(), true);
                dialog.addWindowListener(new java.awt.event.WindowAdapter() {
                    public void windowClosing(java.awt.event.WindowEvent e) {
                        System.exit(0);
                    }
                });
                dialog.setVisible(true);
            }
        });

Antes eu chamava assim para executar o JDialog, e agora com a alteraçao no construtor como devo procedes??

FechamentoVenda dialog = new FechamentoVendaFe(new javax.swing.JFrame(), true);

Ufa, consegui fazer Valeu pela instrução Muito Obrigado.

tive q declarar como

private static Vendas venda;
    public static void main(String args[]) {

        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                //new FechamentoVenda(new javax.swing.JFrame(), true, venda);
                FechamentoVenda dialog = new FechamentoVenda(venda, true);
                dialog.addWindowListener(new java.awt.event.WindowAdapter() {
                    public void windowClosing(java.awt.event.WindowEvent e) {
                        System.exit(0);
                    }
                });
                dialog.setVisible(true);
            }
        });