Desenvolvendo meu primeiro projeto em JAVA

11/01/2012

0

SEEK estive ausente esses dias e estarei novamente apartir de amanhã, juro que perdi um pouco do rumo que tinha tomando desde o sábado... Vamos deixar de conversa mole e vamos ao que interessa... Como você me intimou, primeiro tenho que ler bastante pra evitar fazer algo estruturado numa ambiente orientado a objeto, entendi bem, só tem umas coisas que era complexas pra burro e não teve jeito(mas também achei que aquilo era coisa bem avançada)... Pelo que eu vi, o jeito é fazer pelo console(bem diferente comparado ao Shell do Python(tela preta)), só que eu tô com uma ideia desgraçada na cabeça que eu posso avançar já pra GUI(devo estar ficando louco pra poder desenvolver alguma coisa legal(clicável eu acho kkkkkk) me da um norte cara... Eu sou um cara que tem muita força de vontade só que sem muitas ideias(tenho que mudar isso urgente), a unica ideia que tenho é passar meu projeto do Python pra Java, e logo com GUI... Enfim eu acho que posso e não tenho dúvidas, não sei de tudo, mais gosto de estudar e fazer na hora, to afim de tentar meter a cara no negocio difícil sem medo de errar(até por que ainda estou estudando) me ajuda cara? Tô pensando em desenhar o programa(como ficaria a interface), ver os nomes dos JAlgumaCoisa(componentes que irei usar) para estudar mais sobre eles... e acho que a parada das classes já ta bem fixada na minha cabeça... ME AJUDA?! PS: Num sei se você é professor ou se já é um cara fodão da área sei que você pode me ajudar demais =D enfim... Qualquer coisa serve! Vlw aguadando... [img]http://javafree.uol.com.br/files_user/files/7/51/6E/challenge.jpg[/img]
Murilo Lopes

Murilo Lopes

Responder

Post mais votado

27/01/2012

[quote="Murilo Lilo"]Por que:
p.addTelefone("1234-5678");
? Se p(pessoa) só tem como parâmetro o nome como eu vou add telefone?
[img]http://javafree.uol.com.br/forum/images/smiles/tantan.gif[/img]

Luciano Cargnelutti

Luciano Cargnelutti
Responder

Mais Posts

16/01/2012

Renan Zimmer

tem que criar o arraylist na agenda agora
Responder

16/01/2012

Murilo Lopes

SEKK acho que resolvi o problema... Na hora de criar a array eu tenho que colocar o "tipo" dela como a classe que construtor?
ArrayList<Pessoa> pessoas = new ArrayList();

//...

Pessoa objPessoa = new Pessoa(nome, telefone, email);
	    pessoas.add(objPessoa);
Posso ter me pronunciado errado(bem errado por sinal =D)
Responder

16/01/2012

Murilo Lopes

[quote="Murilo Lilo"]SEKK acho que resolvi o problema... Na hora de criar a array eu tenho que colocar o "tipo" dela como a classe que construtor?
ArrayList<Pessoa> pessoas = new ArrayList();

//...

Pessoa objPessoa = new Pessoa(nome, telefone, email);
	    pessoas.add(objPessoa);
Posso ter me pronunciado errado(bem errado por sinal =D)
Nao sou o seek, maaaaaaaas... (nao sei se tu quer a minha ajuda, mas bora la) Onde tu ta criando o arrayList de pessoas? Por que tu nao muda o objPessoa para apenas pessoa? java é uma linguagem case sensitive. Tu tem que criar o arrayList (a lista tratada) de pessoas no lugar apropriado. Sempre antes de criar algum codigo pense se está colocando o atributo ou método na classe certa.
Responder

16/01/2012

Murilo Lopes

public class Main {

	public static void main(String[] args) {    
		ArrayList<Pessoa> pessoas = new ArrayList<Pessoa>();
		Scanner scanner = new Scanner(System.in);  
		  
	    System.out.println("Digite o nome:");  
	    String nome = scanner.nextLine();
	    System.out.println("Digite o telefone:");  
	    String telefone = scanner.nextLine();
	    System.out.println("Digite o email:");  
	    String email = scanner.nextLine();
		
	    Pessoa pessoa = new Pessoa(nome, telefone, email);
	    pessoas.add(pessoa);               
	}

}
Que isso mano, que isso? asuhasuhasuashsu Claro que quero ajuda mano... =D
Responder

16/01/2012

Murilo ângelo

[quote="Murilo Lilo"]
public class Main {

	public static void main(String[] args) {    
		ArrayList<Pessoa> pessoas = new ArrayList<Pessoa>();
		Scanner scanner = new Scanner(System.in);  
		  
	    System.out.println("Digite o nome:");  
	    String nome = scanner.nextLine();
	    System.out.println("Digite o telefone:");  
	    String telefone = scanner.nextLine();
	    System.out.println("Digite o email:");  
	    String email = scanner.nextLine();
		
	    Pessoa pessoa = new Pessoa(nome, telefone, email);
	    pessoas.add(pessoa);               
	}

}
Que isso mano, que isso? asuhasuhasuashsu Claro que quero ajuda mano... =D
Cara, como eu ja falei, sou meio radical com POO e MVC, pra mim o metodo main é APENAS o ponto de entrada e de saída do programa. Mas vou tentar deixar MVC pra mais além. Ou seja, se eu estivesse te auxiliando nesse projeto, ia pedir pro metodo main ser apenas (vou dar um exemplo bem besta):
MenuIniciar m = new MenuIniciar();
m.iniciar();
EDIT: Só pra acrescentar, geralmente essa classe que se cria pra todar o programa, enquanto no MODELO (ler mais sobre MVC) chama-se classe Fachada.
Responder

16/01/2012

Renan Zimmer

[quote="Murilo Lilo"]
public class Main {

	public static void main(String[] args) {    
		ArrayList<Pessoa> pessoas = new ArrayList<Pessoa>();
		Scanner scanner = new Scanner(System.in);  
		  
	    System.out.println("Digite o nome:");  
	    String nome = scanner.nextLine();
	    System.out.println("Digite o telefone:");  
	    String telefone = scanner.nextLine();
	    System.out.println("Digite o email:");  
	    String email = scanner.nextLine();
		
	    Pessoa pessoa = new Pessoa(nome, telefone, email);
	    pessoas.add(pessoa);               
	}

}
Que isso mano, que isso? asuhasuhasuashsu Claro que quero ajuda mano... =D
Não deixa de estar certo, mas leve em consideração o que nosso colega renanzimmer disse nos posts dele. O projeto em si da agenda vai permitir que o usuário cadastre, veja, apague cadastros... certo? então vamos dividir as coisas: Primeiro e mais importante: A classe main deve servir APENAS para iniciar o programa, nada mais. então considere fazer outra classe, uma chamada Agenda. O main só vai criar um objeto agenda, e chamar o método que vai iniciar o programa (chamemos de menu() ) algo assim
public class Main {

   public static void main(String[] args) {    
      Agenda agenda = new Agenda();
      agenda.menu();              
   }

}
A sua classe agenda vai ter um atributo que vai ser o ArrayList de pessoas, e ela vai ter os métodos para montar o menu, fazer os cadastros, etc. Tenha em mente dividir o programa, então para cada função, você vai criar um método diferente
public void cadastrar(){
   //...
}

public void procurar(){
  //...
}

public void excluir(){
   //...
}

//etc...
Responder

16/01/2012

Murilo Lopes

Mas para fazer isso eu teria quer ter o Scanner e a ArrayList na classe Pessoa? Por que pelo que vi hoje isso me custou 2,5 pontos na minha prova que eu tiraria 10 =D... Fazendo desse seu jeito como ficaria o Scanner e a ArrayList? Entendendo que a classe Pessoa tem apenas atributos, get... e o construtor?
Responder

16/01/2012

Murilo ângelo

O interessante na criaçao de um arraylist, é primeiro criar apenas uma list como atributo e depois tratar no construtor para arraylist. Vai do genérico pro tratado.
Responder

16/01/2012

Murilo Lopes

Renan, não entendi NADA do que tu disse...
Responder

16/01/2012

Renan Zimmer

[quote="Murilo Lilo"]Renan, não entendi NADA do que tu disse...
nem eu XD
Responder

16/01/2012

Renan Zimmer

wdjs;lahdjlas, é viadagem minha. Geralmente eu crio arrayList assim.

private List<Classe> nome da lista;
	
	public Construtor(){
		nome da lista=new ArrayList<Classe>();
	}

Responder

16/01/2012

Murilo Lopes

Agora já criei a classe Agenda e nela conterá os métodos Adicionar, Procurar, Listar Todos, Apagar e o menu. Sem esquecer do scanner e da array... tô fazendo o menu mais to me passando no while pra ficar repetindo o menu iai como faço?
public void menu(){
		
		String opc = ("0");
		
		while(opc != "5"){
			System.out.println("=================");
			System.out.println("Agenda Telefônica");
			System.out.println("=================");
			System.out.println("1 - Cadastrar");
			System.out.println("2 - Procurar");
			System.out.println("3 - Listar todos");
			System.out.println("4 - Apagar");
			System.out.println("5 - Sair");
			System.out.println("==>");
			
			String opc = scanner.nextLine();
			
		}
@EDIT: esqueci isso ai... abafa...
Responder

16/01/2012

Murilo ângelo

[quote="Murilo Lilo"]Agora já criei a classe Agenda e nela conterá os métodos Adicionar, Procurar, Listar Todos, Apagar e o menu. Sem esquecer do scanner e da array... tô fazendo o menu mais to me passando no while pra ficar repetindo o menu iai como faço?
public void menu(){
		
		String opc = ("0");
		
		while(opc != "5"){
			System.out.println("=================");
			System.out.println("Agenda Telefônica");
			System.out.println("=================");
			System.out.println("1 - Cadastrar");
			System.out.println("2 - Procurar");
			System.out.println("3 - Listar todos");
			System.out.println("4 - Apagar");
			System.out.println("5 - Sair");
			System.out.println("==>");
			
			String opc = scanner.nextLine();
			
		}
seguinte, nao precisa fazer um println pra mudar de linha, é só usar \n dentro do string que ja quebra a linha. E o ideal pra fazer menuzinho é usar switch case (ler sobre switch case), e caso a resposta seja 1...

public void cadastrar(){
//logica aqui...
menu();
}

e assim por diante.
Responder

16/01/2012

Renan Zimmer

[quote="Murilo Lilo"]Agora já criei a classe Agenda e nela conterá os métodos Adicionar, Procurar, Listar Todos, Apagar e o menu. Sem esquecer do scanner e da array... tô fazendo o menu mais to me passando no while pra ficar repetindo o menu iai como faço?
public void menu(){
		
		String opc = ("0");
		
		while(opc != "5"){
			System.out.println("=================");
			System.out.println("Agenda Telefônica");
			System.out.println("=================");
			System.out.println("1 - Cadastrar");
			System.out.println("2 - Procurar");
			System.out.println("3 - Listar todos");
			System.out.println("4 - Apagar");
			System.out.println("5 - Sair");
			System.out.println("==>");
			
			String opc = scanner.nextLine();
			
		}
não use String como operador, use um [color=blue]int[/color] ou um [color=blue]char[/color] Essa comparação
opc != "5"
não funciona, em Java, String é objeto, e objetos precisam ser comparados com o método equals
!opc.equals("5");
seria o certo. Mas não use String, Scanner consegue ler inteiros, use o método nextInt() Ah, e uma dica, deixe o "sair" ser a opção 0 depois quando você acabar, eu vou pedir pra você colocar mais opções, então se sair for o 5, vai dar problema :P
Responder

16/01/2012

Douglas Eric

[quote="renanzimmer"] seguinte, nao precisa fazer um println pra mudar de linha, é só usar \n dentro do string que ja quebra a linha.
Usar o println é melhor, porque ele vai usar o caracter nativo para dividir as linhas.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar