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:
EnderecoobjEndereco=newEndereco();
Yelden
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?
R
rodrigo.srrocha
Obrigado pela ajuda,
Então não é exercício, estou fazendo para aprender.
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
publicstaticvoidincluirEndereco(){Scannerentrada=newScanner(System.in);inttpeInt=0;StringtpeString;// variaveis para criacao do endereco StringtipoEndereco;StringlogradouroEndereco;StringnumeroEndereco;StringcomplementoEndereco;StringcidadeEndereco;StringestadoEndereco;StringpaisEndereco;StringcepEndereco;tpe+=1;tpeInt=tpe;tpeString="tpe"+Integer.toString(tpeInt);}
S
Slow17
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
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…
S
Slow17
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
R
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?
S
Slow17
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?
o arraylist é um dos arrays dinamicos que o java proporciona,você vai adicionando e ele vai ocupando posições , começando pelo indice 0
R
rodrigo.srrocha
Slow17, acho que encontrei uma forma de fazer + ou - menos como vc sugeriu
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?
S
Slow17
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
é 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!
G
GabrielMantini
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