public int CompareTo(object obj)
        {
            if (obj == null || obj.GetType() != GetType())
            {
                return(-1);
            }

            Person person = (Person)obj;

            int rolleEqualRate = Rolle.CompareTo(person.Rolle);

            if (rolleEqualRate < 0 || rolleEqualRate > 0)
            {
                return(rolleEqualRate);
            }

            int vornameEqualRate = Vorname.CompareTo(person.Vorname);

            if (vornameEqualRate < 0 || vornameEqualRate > 0)
            {
                return(vornameEqualRate);
            }

            int nachnameEqualRate = Nachname.CompareTo(person.Nachname);

            if (nachnameEqualRate < 0 || nachnameEqualRate > 0)
            {
                return(nachnameEqualRate);
            }

            int geburtsdatumEqualRate = Geburtsdatum.CompareTo(person.Geburtsdatum);

            switch (geburtsdatumEqualRate)
            {
            case 0:
                return(Adresse.CompareTo(person.Adresse));

            default:
                return(geburtsdatumEqualRate);
            }
        }