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?
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:
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
[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
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
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