Declaração de objeto em Java

Olá Pessoal,

Comecei a programar em Java essa semana e preciso de ajuda para entender e fazer algumas coisas,

Preciso usar o codigo abaixo para a criacao de um novo objeto do Tipo Endereco, Porém o nome do objeto deve ser o texto contido na variavel tpeString.
Alguém pode ajudar?

	tpe += 1;
	tpeInt = tpe;
	tpeString = "tpe" + Interger.toString(tpeInt);
	
	Endereco tpeString = new Endereco();

Obrigado,
Rodrigo Rocha

A classe Endereço tem quais atributos?
e é Integer !

class Endereco {
String tipo;
String logradouro;
String numero;
String complemento;
String cidade;
String estado;
String pais;
Endereco cep;
}

desculpa cara,mas pode dizer o enunciado desse exercicio? porque não encontro sentido nisto…
Você quer que a String tpeString seja o nome do novo objeto de Endereco,porém Endereço é tipo,não entendi muito bem isso.
para você instanciar uma classe você simplesmente faz assim:

Endereco objEndereco = new Endereco();

Do Jeito que está, o compilador provavelmente acusará duplicação de variável pois a tpeString ja foi usada e inicializada.

Acho que você deve interpretar seu problema de outra maneira, Porque seu objeto deve se chamar assim?

Obrigado pela ajuda,

Então não é exercício, estou fazendo para aprender.

Tenho uma Classe Cliente:

class Cliente {
String cpf;
String rg;
String sobrenome;
String nome;
String foneResidencial;
String foneCelular;
int idade;
Endereco enderecoCliente;
String profissao;
String empresa;
double salario;
}

Essa Classe Cliente tem um objeto do tipo Endereco e a classe é esta:

class Endereco {
String tipo;
String logradouro;
String numero;
String complemento;
String cidade;
String estado;
String pais;
Endereco cep;
}

Primeiramente eu solicito entrada dos dados do enderecoe guardo em variaveis pra depois fazer

Endereco endCliente1 = new Endereco();

mas se eu colocar dessa forma, a criação do primeira instância de Endereco funciona mas a segunda não porque endCliente1 já existe.
Então preciso de algo que incremente o nome endCliente1 fiz assim

public static void incluirEndereco() {
	Scanner entrada = new Scanner(System.in);	
	
	int tpeInt = 0;
	String tpeString;
				
	// variaveis para criacao do endereco 			
	String tipoEndereco;
	String logradouroEndereco;
	String numeroEndereco;
	String complementoEndereco;
	String cidadeEndereco;
	String estadoEndereco;
	String paisEndereco;
	String cepEndereco;
			
	tpe += 1;
	tpeInt = tpe;
	tpeString = "tpe" + Integer.toString(tpeInt);
}

acho desnecessario criar uma classe endereço porque o endereço pertence ao Cliente.
ou seja na classe do cliente tem os atributos do endereco . E não se pode criar nomes em String para que o nome das variaveis receba esse nome,você diz o nome da variavel e acabou,
sendo que ela não pode ser repetida…
se você quer trabalhar com multiplos endereços,uma boa seria criar um ArrayList da classe endereço

ArrayList <Endereco> enderecos = new ArrayList<Endereco>();

e popular essa classe endereço,e adicionar no arraylist.

enderecos.add(objEndereco)

recomendo você estudar arraylists porque vai ser puta importante para o futuro…

Amigo ,outra coisa coloque os codigos entre as tags code,basta você clicar no botão code que está entre Quote e list,você clica nele,escreve o codigo dentro dele e fecha.
assim o codigo fica mais legivel

Slow17, eu vou usar a classe Endereco em outras objetos, por isso que fiz assim.

Não sei se esse array List vai servir porque o usuário pode criar quantos Clientes quiser então como vou saber o tamanho do array?

[quote=rodrigo.srrocha]Slow17, eu vou usar a classe Endereco em outras objetos, por isso que fiz assim.

Não sei se esse array List vai servir porque o usuário pode criar quantos Clientes quiser então como vou saber o tamanho do array?
[/quote]
o arraylist é um dos arrays dinamicos que o java proporciona,você vai adicionando e ele vai ocupando posições , começando pelo indice 0

Slow17, acho que encontrei uma forma de fazer + ou - menos como vc sugeriu

public static void incluirEndereco() {
	Scanner entrada = new Scanner(System.in);	
	
	Endereco[] enderecoCliente;
	arrEndCli += 1;
	enderecoCliente[arrEndCli] = new Endereco();
	
	System.out.print("TIPO: ");	
	enderecoCliente[arrEndCli].tipo = entrada.nextLine();
	
	System.out.print("LOGRADOURO: ");	
	enderecoCliente[arrEndCli].logradouro = entrada.nextLine();

	System.out.print("NUMERO: ");	
	enderecoCliente[arrEndCli].numero = entrada.nextLine();
	
	System.out.print("COMPLEMENTO: ");	
	enderecoCliente[arrEndCli].complemento = entrada.nextLine();

	System.out.print("CIDADE: ");	
	enderecoCliente[arrEndCli].cidade = entrada.nextLine();		
	
	System.out.print("ESTADO: ");	
	enderecoCliente[arrEndCli].estado = entrada.nextLine();		
	
	System.out.print("PAIS: ");	
	enderecoCliente[arrEndCli].pais = entrada.nextLine();

	System.out.print("CEP: ");	
	enderecoCliente[arrEndCli].cep = entrada.nextLine();			
}

esse método não está dentro do main porque senão ele sempre será chamado (pelo q entendi é assim q funciona).
O array enderecoCliente e o int arrEndCli eu vou precisar usar no método q chama esse método incluirEndereco.

então como faço pra enxegar essas variáveis nos dois métodos?

ai cara,to vendo que você está + ou - enrrolado com bastante coisa no quesito de programação.
Tem algum livro de orientação a objetos? estude mais esse livro.e tipo,existe os tipos de variavel global e internas(não lembro se o nome é exatamente internas)as variaveis global são declaradas fora de qualquer função,logo elas são acessiveis em todo o ducumento que o programa está lendo,e as variaveis internas,são declaradas dentro dos blocos da função,então elas serão acessadas apenas dentro da função,em outra função ela não poderá ser acessada,entendeu?
Global = todo o arquivo que está sendo processado na hora pode ler,inclusive todas as funções,
Interna = apenas a função que ela foi declarada pode ler. tipo

//variavel global 
//Poderá ser lida tanto fora quanto dentro do processAlgo
String texto;

public void processaAlgo(){
//variavel interna
//apenas será lida no processaAlgo
String varIntera;
}

é mais ou menos isso,entendeu? recomendo você dar uma lida sobre o assunto
ah,em java swing o programa é executado dentro do main sim

outra,são variaveis locais e não internas!

rodrigo.srrocha, tenta explicar o que você quer fazer, não precisa colocar código. Tenta explicar que é mais facil de entender o que você quer, isso ai tá tudo muito confuso.
E, como o Slow17 disse, use as tags code