Dúvidas sobre relacionamentos

Amigos,

Sou iniciante em java e estou quebrando a cabeça para começar a montar o meu primeiro sistema.

Tem como alguém m ajudar?

Comecei criando as classes:

public class Pessoas {
String nome;
String sexo;
int idade;

public class Homem {
Pessoas p1 = new Pessoas ();
p1.nome = “Paulo”;
p1.sexo = “M”;
p1.idade = 18;

Mas não estou conseguindo continuar…

Preciso criar um sistema de família onde consiga obter o grau de parentesco entre duas pessoas e os relacionamento familiares entre eles poderão ser: Pai e Mãe, Avô, Avó, etc
Todos tem os mesmos atributos mas não consigo pensar em uma maneira de atribuir um relacionamento entre eles.

Fico no aguardo do contato e muito obrigado pela ajuda.

Você sabe as relações de parentesco?
Se não, como é o meu caso eu achei este site que é interessante:
http://docs.google.com/gview?a=v&q=cache:NE9tLWlrSa8J:www2.grupogen.com.br/GBK/erratas/9788527712743a.pdf+parentesco+familiar&hl=pt-BR

Você pode optar por dar uma olhada em herança e em outras definições ou fazer metodo " força bruta " que é verificar a pessoa X com você e definir qual a relação: Relação está no site que te passei.

Para verificar vc pode usar a idade, se forem dados do estas nome; sexo; idade;

A idéia é a criação de uma árvore genealógica com as seguintes condições.
O problema que sou iniciante em Java como falei e não trabalhava na área estou estudando com o livro Como Programar e o Use a cabeça mas não estou conseguindo começar o trabalho… tem como me dar uma luz? Muito obrigado…

Considerando duas pessoas X e Y, o sistema deverá exibir o seu grau de parentesco, no seguinte formato:
X é de Y
X não é parente de Y

Os relacionamentos que devem existir obrigatoriamente no sistema são: pai, mãe, marido, esposa, filho, filha, avô, avó, tio, tia, sobrinho, sobrinha, neto e neta e sem parentesco.
DICA: guarde apenas as relações de pai-mãe-filho, e use-as para derivar os outros tipos de parentesco.
Casamento e Divórcio
O sistema deverá permitir o casamento e divórcio de duas pessoas e registrar e exibir quando solicitado todo o histórico de casamentos e divórcios ocorridos para uma dada pessoa. Uma pessoa só poderá se casar se não estiver casada no momento, e só poderá se divorciar se estiver casada no momento.
Dada uma pessoa X, o sistema deverá exibir seu estado civil atual (se for casada, o nome do cônjuge).
O casamento e o divórcio devem, obrigatoriamente, ocorrer para as duas pessoas do casal (não vale se casar ou se divorciar sozinho!).
DICA: Use uma única estrutura para guardar casamentos e divórcios, e um atributo que indique se o casamento está ou não ativo.
Nascimento de Filhos
O sistema deverá permitir o ?nascimento? de filhos de duas pessoas cadastradas no sistema, não necessariamente casadas. Dadas duas pessoas X e Y, o sistema deverá exibir os filhos do casal, ou no caso destas duas pessoas não terem filhos juntos, a mensagem: ?Estas duas pessoas não têm filhos juntos?.

Implementações específicas
Todas as pessoas da árvore devem obrigatoriamente possuir as informações: nome, data de nascimento (pode usar 3 ints para representar a data) e sexo (F ou M). Outras características são opcionais.
Todas as mulheres da árvore devem obrigatoriamente possuir as informações de peso e altura e o método para calcular o seu IMC (índice de massa corporal). Os homens NÃO devem possuir estas características!
Funcionalidades obrigatórias
Abaixo segue a lista de métodos obrigatórios para o sistema. Outras funcionalidades podem ser implementadas para enriquecer o trabalho, caso o grupo deseje.
? casarPessoas( Pessoa a, Pessoa b)
? divorciarPessoas( Pessoa a, Pessoa b)
? verificaParentesco( Pessoa a, Pessoa b)
? listarFilhos( Pessoa a, Pessoa b)
? listarCasamentos( Pessoa a)
? verficarEstadoCivil( Pessoa a)
? calcularIMC(Mulher a)

Poxa, o ideal seria fazer isso em Prolog…

Você não precisa usar herança. Simplesmente guarde na sua classe Pessoa um atributo para o pai e outro para a mãe:

class Pessoa { // ... private Pessoa pai, mae; }

[quote=pfreitas009]Amigos,

public class Pessoas {
String nome;
String sexo;
int idade;
}
public class Homem {
Pessoas p1 = new Pessoas ();
p1.nome = “Paulo”;
p1.sexo = “M”;
p1.idade = 18;
}[/quote]

Você pode deixar a classe Pesso assim, mas poderia alterar sua classe Homem para mais ou menos isso:

public class Pessoas {
	String nome;
	String sexo;
	int idade;
}	
public class Homem {
    Pessoas pais = new Pessoas ();
    Pessoas tios = new Pessoas ();
    //assim por diante, mas não fixo é claro....
}

Olá novamente…
Vcs poderiam de dar mais algumas dicas pq sou administrador e estou começando agora em Java.
grato pelo apoio.

=

Comece dizendo pra nós qual é exatamente a sua dificuldade.
O código que postei não serviu pra você?