Desafio

Olá pessoal tenho um programa que v postar abaixo gostaria de ver quem consegue desenvolver o código mais simples e ao mesmo tempo compácto e funcional.

package pojo;

import java.sql.Date;

public class Pessoa 
{
	private String nome;
	private Date dataNascimento;
	private int idade;
	
	public String getNome() {
		return nome;
	}
	public void setNome(String nome) {
		this.nome = nome;
	}
	public Date getDataNascimento() {
		return dataNascimento;
	}
	public void setDataNascimento(Date dataNascimento) {
		this.dataNascimento = dataNascimento;
	}
	public int getIdade() {
		return idade;
	}
	public void setIdade(int idade) {
		this.idade = idade;
	}
	public String CalculaIdade(Date dataNascimento)
	{
		String dtNasc="0";
		//aqui a logica do calculo
		//========================
		
		//========================
		return dtNasc;
	}
}

E cade a sua lógica???

Vc presta atenção nas aulas de Java?

Não entenderam o desafio?
è a lógica … existem muitos tipos de lógias que chegam ao mesmo resultado. Depois eu vou postar a minha.

Hahahaha usando psicologia pra alguem fazer o trabalho pra ela :slight_smile:

[quote=cidinha]Não entenderam o desafio?
è a lógica … existem muitos tipos de lógias que chegam ao mesmo resultado. Depois eu vou postar a minha.[/quote]
:oops: :oops: :oops: :oops: :oops:
putz, que desculpa mais esfarrapada
:oops: :oops: :oops: :oops: :oops:

kkkk , seria mais fácil pedir pra galera ajudar a desenvolver o código do que vir com essa de desafio. Mas de qualquer forma, dá uma olhada nisso:

http://imasters.uol.com.br/artigo/5360/java/calcule_a_idade_corretamente_em_java//imprimir/

Realmente que desculpa esfarrapada rssss. :smiley:

:smiley: Oi amiga não ligue pra esses machistas não, tente isso:

[code]public String CalculaIdade(Date dataNascimento)
{
String dtNasc=“0”;
//aqui a logica do calculo
//========================
Calendar dateOfBirth = new GregorianCalendar();
dateOfBirth.setTime(dataNascimento);

        // Cria um objeto calendar com a data atual
        Calendar today = Calendar.getInstance();
        
        // Obtém a idade baseado no ano
        int age = today.get(Calendar.YEAR) - dateOfBirth.get(Calendar.YEAR);
        
        dateOfBirth.add(Calendar.YEAR, age);
        
        //se a data de hoje é antes da data de Nascimento, então diminui 1(um)
        if (today.before(dateOfBirth)) {
            age--;
        }

	//========================
	return dtNasc;
}[/code]

E PARABÉNS RAFA “rafaengenharia” pela atitude peguei seu link e tentei ajudar se todos ajudacem um poco como vc tudo na vida seria mais fácil

Vejamos.

Essa entidade tem os atributos idade e data de nascimento.

-A idade depende da data de nascimento?
-Se depende, porque eu tenho um getter e um setter para este atributo? Eu posso ter um objeto com idade = 20 mas data de nascimento 01/04/2099 ?

Outra coisa, se a idade depende da data de nascimento, e a mesma é um atributo, qual a razão do método publico CalculaIdade receber uma idade de calcular qualquer? Não poderia ler o atributo this.dataNascimento ?

Apesar do método estar ligado à instância, ele não consulta nenhum atributo, e ainda retorna uma String. Isso tem cada de método estático.

Olá, Cidinha.

Uma outra dica. Para melhor organizar seu código e facilitar futuras manutenções, deixe sua classe POJO apenas com getters e setters. Crie um outra classe responsável pela inteligência do programa, cujo o pacote pode ser chamado business. Então, sua classe que vai conter o método CalculaIdade() pode se chamar PessoaBI (Business Intelligence).

Espero ter ajudado.

Abraço.

[quote=flaviosf]Olá, Cidinha.

Uma outra dica. Para melhor organizar seu código e facilitar futuras manutenções, deixe sua classe POJO apenas com getters e setters. Crie um outra classe responsável pela inteligência do programa, cujo o pacote pode ser chamado business. Então, sua classe que vai conter o método CalculaIdade() pode se chamar PessoaBI (Business Intelligence).

Espero ter ajudado.

Abraço.
[/quote]

Outra dica:

http://fragmental.com.br/wiki/index.php/Evitando_VOs_e_BOs

[quote=narinha] :smiley: Oi amiga não ligue pra esses machistas não, tente isso:
[/quote]

não me leve a mal mas não vi nenhuma demonstração de machismo.