Como passar objeto da propria classe por parametro?

Gente, como eu faço pra declarar um objeto da propria classe, preciso passá-lo por parametro para outra classe qualquer…

O código abaixo vai ajuda-los a entender.

[code]package View;
import Control.Controle;
import Model.Modelo;

import javax.swing.;
import java.awt.
;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.JOptionPane;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;

public class InterCadPrincipal extends JFrame {

Modelo Omodelo = new Modelo();
Controle Ocontrole = new Controle();

FlowLayout Flayout;
public JTextField jtfnome, jtfid, jtfend, jtfpreco, jtfproduto,
jtfdata, jtfcpf, jtfemail, jtfcidade;

public JLabel jlnome, jlproduto, jlpreco, jlid, jlend, jldata, 
jltipocliente, jlcpf, jlemail, jlcidade;

public JButton jbcadastrar, jbfechar, jbcomprar, jbconsulta;
public JRadioButton rbCliente,rbFornec;
public ButtonGroup exclusivo;//mutuamente exclusivo, serve pra marcar uma só das opções.
public boolean tipocliente; //Atributo que distingue fornecedor de cliente.


public void settipocliente(boolean tipocliente) {
	this.tipocliente = tipocliente;
}

public InterCadPrincipal() {
	
    setTitle("                              Cadastro Principal");
	
	Container gerenciador = getContentPane();
	gerenciador.setLayout(null);
	
    /*Instanciando botões*/		
	jbconsulta = new JButton("Consulta");
	jbcadastrar = new JButton("Cadastrar");
	jbcomprar = new JButton("Comprar");
	jbfechar = new JButton("Fechar");
	
	/*Instanciando caixas de texto*/ 
	jtfnome = new JTextField();
	jtfend = new JTextField();
	jtfdata = new JTextField();
	jtfcpf = new JTextField();
	jtfemail = new JTextField();
	jtfcidade = new JTextField();
	jtfid = new JTextField();
	jtfproduto = new JTextField();
	jtfpreco = new JTextField();
	
	/*Instanciando labels*/
	jlnome = new JLabel("Nome ");
	jlend = new JLabel("Endereço ");
	jldata = new JLabel("Data Nascimento ");
	jltipocliente = new JLabel("tipo");
	jlcpf = new JLabel("CPF / CNPJ");
	jlemail = new JLabel("Email");
	jlcidade = new JLabel("Cidade");
	jlid = new JLabel("ID");
	jlpreco = new JLabel("Preço");
	jlproduto = new JLabel("Produto");
	
	/*Instanciando radiobuttons*/
    rbCliente =new JRadioButton("Cliente");
    rbFornec =new JRadioButton("Fornecedor");
    exclusivo = new ButtonGroup();
    
    jlnome.setBounds(10, 10, 300, 23);
    jlend.setBounds(10, 40, 300, 23);
    jldata.setBounds(10, 70, 300, 23);
    jltipocliente.setBounds(10, 100, 300, 23);
    jlcidade.setBounds(10, 130, 300, 23);
    jlcpf.setBounds(10, 160, 300, 23);
    jlemail.setBounds(10, 190, 300, 23);
    jlid.setBounds(350, 70, 50, 23);
    jlproduto.setBounds(10, 220, 350, 23);
    jlpreco.setBounds(10, 250, 300, 23);
    
    /*Aqui os labels 
     * e as caixas de texto são colocados em modo invisivel*/	    
    jlpreco.setVisible(false);
    jlproduto.setVisible(false);
    jtfpreco.setVisible(false);
    jtfproduto.setVisible(false);
    
    jtfpreco.setBounds(150, 250, 150, 23);
    jtfproduto.setBounds(150, 220, 300, 23);
    jtfnome.setBounds(150, 10, 300,23);
    jtfend.setBounds(150, 40, 300, 23);
    jtfdata.setBounds(150, 70, 90,23);
    jtfcidade.setBounds(150, 130, 300, 23);
    jtfcpf.setBounds(150, 160, 300, 23);
    jtfemail.setBounds(150, 190, 300, 23);
    jtfid.setBounds(380, 70, 70, 23);
    
    rbCliente.setBounds(140, 100, 70, 23);
    rbFornec.setBounds(240, 100, 90, 23);
    
    jbcadastrar.setBounds(10, 420, 100, 30);
    jbcomprar.setBounds(120, 420, 100, 30);
    jbconsulta.setBounds(230, 420, 100, 30);
    jbfechar.setBounds(340, 420, 100, 30);
    
    gerenciador.add(jbcomprar);
    gerenciador.add(jbconsulta);
    gerenciador.add(jbcadastrar);
    gerenciador.add(jbfechar);
    
    gerenciador.add(jlid);
    gerenciador.add(jlnome);
    gerenciador.add(jlend);
    gerenciador.add(jldata);
    gerenciador.add(jltipocliente);
    gerenciador.add(jlcidade);
    gerenciador.add(jlcpf);
    gerenciador.add(jtfcpf);
    gerenciador.add(jlemail);
    gerenciador.add(jlpreco);
 	gerenciador.add(jlproduto); 
 	
    gerenciador.add(jtfproduto);
    gerenciador.add(jtfpreco);	    
    gerenciador.add(jtfid);
    gerenciador.add(jtfnome);
    gerenciador.add(jtfend);
    gerenciador.add(jtfdata);
    gerenciador.add(jtfcidade);
    gerenciador.add(jtfemail);
   
    gerenciador.add(rbCliente);
    gerenciador.add(rbFornec);

// final InterCadPrincipal cad = this;

    rbFornec.addActionListener(new ActionListener()
    {
    	public void actionPerformed(ActionEvent e)
    	{
    		if(rbFornec.isSelected() == true){
   	    	   jlpreco.setVisible(true);
   	    	   jlproduto.setVisible(true);
   	    	   jtfproduto.setVisible(true);
   	    	   jtfpreco.setVisible(true);
   	    }
   	    
    	}
    });
    
    rbCliente.addActionListener(new ActionListener()
    {
    	public void actionPerformed(ActionEvent e)
    	{
    		if(rbCliente.isSelected() == true){
   	    	   jlpreco.setVisible(false);
   	    	   jlproduto.setVisible(false);
   	    	   jtfproduto.setVisible(false);
   	    	   jtfpreco.setVisible(false);
   	    }
   	    
    	}
    });
    exclusivo.add(rbCliente);
    exclusivo.add(rbFornec);
    
    setSize(500,500);
    setVisible(true);		
	
	jbcadastrar.addActionListener(new ActionListener()  //método pra sair.
	{
	  public void actionPerformed(ActionEvent e)
	  {
		 /*Quero fazer um procedimento aqui, e preciso passar como parametro
		  * um objeto dessa classe, como eu faço isso????*/  
	  }

	
	}//fim do metodo		
    
	);
	
	
	jbfechar.addActionListener(new ActionListener()
	{
		public void actionPerformed(ActionEvent e)
		{
			System.exit(0);
		}
	});
	
	jbcomprar.addActionListener(new ActionListener()
	{
		public void actionPerformed(ActionEvent e)
		{
	        new InterContas(); //método que chama outro frame, nesse caso o de compras.
	       
		}
	}
	);
	
	jbconsulta.addActionListener(new ActionListener()
	{
		public void actionPerformed(ActionEvent e)
		{
			new InterConsulta();
		}
	}
	);
	}//fim do construtor.


public static void main(String[] args)
{
	new InterCadPrincipal();
	
}

///Abaixo estão os métodos modificadores e acesso.
public JTextField getJtfcidade() {
return jtfcidade;
}
public void setJtfcidade(JTextField jtfcidade) {
this.jtfcidade = jtfcidade;
}
public JTextField getJtfcpf() {
return jtfcpf;
}
public void setJtfcpf(JTextField jtfcpf) {
this.jtfcpf = jtfcpf;
}
public JTextField getJtfdata() {
return jtfdata;
}
public void setJtfdata(JTextField jtfdata) {
this.jtfdata = jtfdata;
}
public JTextField getJtfemail() {
return jtfemail;
}
public void setJtfemail(JTextField jtfemail) {
this.jtfemail = jtfemail;
}
public JTextField getJtfend() {
return jtfend;
}
public void setJtfend(JTextField jtfend) {
this.jtfend = jtfend;
}
public JTextField getJtfnome() {
return jtfnome;
}
public void setJtfnome(JTextField jtfnome) {
this.jtfnome = jtfnome;
}
public JLabel getJlid() {
return jlid;
}
public void setJlid(JLabel jlid) {
this.jlid = jlid;
}
public boolean istipocliente(boolean a) {
if(rbCliente.isSelected() == true)
istipocliente(true);
else istipocliente(false);
// TODO Auto-generated method stub
return false;
}
/
}//fim.
[/code]

Olá senhor,olha não entendi o que você quer fazer nessa classe mais para passar o objeto da própria classe como parâmetro para um método é só utilizar o palavra chave this.

Exemplo

   public class minhaClasse {
        String nomeQualquer = "JAVA";
       
        public MInhaClasse() {
             imprimirNomeQualquer(this);//passa o próprio objeto para o parâmetro.
        }
  
        public void imprimirNomeQualquer(MinhaClasse pelom) {
              System.out.println(pelom.getNomeQualquer());
        }

        public String getNomeQualquer() {
             return nomeQualquer;
        }
   } 

Vê se tú consegue entender.
Ass: Pelom Cabelom;

Amigo, lá onde falei que precisava instanciar um objeto e manda-lo por paramentro, é porque preciso dele nessa classe :

[code]package Control;
import java.awt.event.ActionListener;

import Model.*;
import View.InterCadPrincipal;

import javax.swing.JOptionPane;

public class Controle {

//InterCadPrincipal Ocadastro = new InterCadPrincipal();
Modelo Omodelo = new Modelo();

public void manda_dados(ActionListener listener){
Omodelo.cadastro(listener);

}

public Controle() {
// TODO Auto-generated constructor stub
}
public static void main(String[] args) {
// TODO Auto-generated method stub
new Controle();
}

}
[/code]

[quote]public class Controle {

//InterCadPrincipal Ocadastro = new InterCadPrincipal();

Modelo Omodelo = new Modelo();[/quote]

E porque você não está fazendo exatamente como está comentado aí?