Forma de Programar

Bom pessoal, estou com dúvida quanto à forma de programação.
Vou definir aqui o ‘esqueleto’ do que estou fazendo, e gostaria a opinião de vcs para saber se realmente estou no caminho certo.

[code] public class AgendaTel{

   private  String nome;
   private int idade;

   public AgendaTel(){}

   public void setnome(String a){
        this.nome = a;
   }

   public void setidade(int b){
        this.idade = b;
   }

   public String getnome(){
        return nome
   }

   public int getidade(){
        return idade
   }[/code]

Bom agora eu preciso de uma collection ou um vetor para guardar estas informações, então acho que vai ser necessário uutra classe.

[code]public class AgendaTelTeste{

   private  AgendaTel[] = new AgendaTel[10];

   public AgendaTelTeste(){}

   public void Inserir(){

// implementacao aki
}

   public void Retirar(){

// implementacao aki
}[/code]

Bom, agora acho que seria necessário outra classe com um método main para chamar estas duas, pelo seguinte: Meus métodos Inserir, Retirar, Alterar (não descrito acima), etc, todos vão estar nesta classe, por isso pensei em não fazer o main ali. Gostaria de uma dica de vcs.

P.S: Pessoal, fiz este programa aqui no GUJ mesmo, se tiver algum erro de sintaxe, me desculpem, pois ainda sou iniciante.
Valeu!

os nomes dos metodos quando formados por 2 ou mais palavras da 2ª em diante deve ter a letra inicial maiuscula

 public class AgendaTel{
 
        private  String nome;
        private int idade;
 
        public AgendaTel(){}
 
        public void setNome(String a){
             this.nome = a;
        }
 
        public void setIdade(int b){
             this.idade = b;
        }
 
        public String getNome(){
             return nome
        }
 
        public int getIdade(){
             return idade
        }

a ta ok, foi mal, me esqueci deste detalhe. Mas quanto ao número de classes como está o programa, seria desta forma mesmo?

public class AgendaTelTeste{
 
        private  AgendaTel[] vetor = new AgendaTel[10];
 
        public AgendaTelTeste(){}
 
        public void inserir(){
    //        implementacao aki
        }
 
        public void retirar(){
 //          implementacao aki
        }

vc esqueçeu do nome do seu vetor
os metodos iniciam com minusculas

as convenções ou boas praticas de programação ajudam muito a arrumar o codigo e um futuro ambiente de trabalho e fundamental

esses exemplos de iniciantes são muito sem nexo, nao tem contexto, não tem aplicação
se vc esta perguntatndo se na “vida real” seria assim ? não
igual para explicar threadso cara cria 2 threads e manda cda uma printar na tela de 1 a 500 so para vc ver a concorrencia

se preocupe na sintaxe da linguagem e nas funcionalidades das palavras reservadas

Opa!

Duas classes para fazer isso tá legal, vc poderia usar ArrayList para não ficar preso a um tamanho maximo de registros na sua agenda, como no caso do seu exemplo onde vc usa um array de 10 elementos…

A primeira classe tá legal, não tem muito o que inventar… Mas acho que o nome tá estranho, porque ela não é a Agenda em si, é somente um registro, e a agenda será formada por vários registros, certo? Sei lá, chama essa classe de Contato, por exemplo, fica melhor :slight_smile:
Na verdade vc poderia colocar mais um construtor que já recebesse os dados e criasse um objeto com os campos nome, idade e o que mais vc colocar depois já inicalizados…

A segunda classe poderia ser algo do tipo

public class Agenda{
	
	private ArrayList registros;
	
	public Agenda(){
	
	}
	
	public incluirContato(Contato contato){
	//blablabla
	}
	
	public void excluirContato(String nomeDoCara){
	//blablabla
	}
	
	//cria outros métodos para incluir/excluir, recebendo outros parâmetros diferentes, etc...
}

[/quote]

Caro victorhugomuniz, esse ‘exemplo’ como eu disse não está completo e foi apenas uma forma de tirar dúvida, e se o amigo acha que os exemplos estão mto fora do contexto, acho que vc está no Fórum Errado, não deveria vc estar no Fórum Java Avançado??? Pois eu estou no básico, e acho que dúvidas são importantes construtoras para um futuro aprendizado, ainda que sejam sem contexto.

Cassio, valeu mesmo pela dica! Me ajudou bastante!

Tranquilo cara, Precisando (e eu sabendo), é só falar :slight_smile:

Abraço!