1   public class Henkilo {
2     private String etunimi;
3     private String sukunimi;
4   
5     private Henkilo vanhempi1=null;
6     private Henkilo vanhempi2=null;
7     private Henkilo puoliso=null;
8   
9     public Henkilo(String etunimi, String sukunimi) {
10      this.etunimi = etunimi;
11      this.sukunimi = sukunimi;
12    }
13  
14    public void setVanhempi1(Henkilo h) {
15      this.vanhempi1 = h;
16    }
17  
18    public void setVanhempi2(Henkilo h) {
19      this.vanhempi2 = h;
20    }
21  
22    public void setPuoliso(Henkilo h) {
23      this.puoliso = h;
24    }
25  
26    public Henkilo getPuoliso() {
27      return puoliso;
28    }
29  
30    public String getEtunimi() {
31      return etunimi;
32    }
33  
34    public String getSukunimi() {
35      return sukunimi;
36    }
37  
38    public static void main(String[] args) {
39      Henkilo matti = new Henkilo("Matti","Virtanen");
40      Henkilo liisa = new Henkilo("Liisa","Mäkinen");
41      Henkilo aki = new Henkilo("Aki","Saari");
42  
43      matti.meneNaimisiin(liisa);
44      matti.tulosta();
45      liisa.tulosta();
46      Henkilo heli = matti.teeLapsi("Heli");
47      heli.tulosta();
48      Henkilo mikko = heli.teeLapsi("Mikko");
49      // Bonus alkaa:
50      liisa.meneNaimisiin(aki);
51      matti.tulosta();
52      liisa.tulosta();
53    }
54  }
55