А давайте я попробую разложить как работает еврейство в человеке понятным и простым языком.
Для начала создадим объект HumanBeing.
public class HumanBeing { private String name; private Sex sex; private Boolean isJewish = false; private Boolean isCircumcised = false; private HumanBeing mother; private HumenBeing father; public void setMother(HumanBeing mother) { this.mother = mother; } public HumanBeing getMother() { return mother; } public void setFather(HumanBeing father) { this.father = father; } public HumanBeing getFather() { return father; } public void setName(String name) { this.name = name; } public String getName() { return name; } public void setSex(Sex sex) { this.sex = sex; } public Sex getSex() { return sex; } public void setIsJewish(Boolean isJewish) { this.isJewish = isJewish; } public Boolean geIsJewish() { return isJewish; } public void setIsCircumcised(Boolean isCircumcised) { this.isCircumcised = isCircumcised; } public Boolean geIsCircumcised() { return isCircumcised; } }
Нам понадобился енум класс Sex
public enum Sex { MALE; FEMALE; }
Теперь создаем нового человека. Предположим это нееврейский мальчик по имени Джон.
public class Life { public static void main(String[] args) { HumanBeing humanBeing = new HumanBeing(); humanBeing.setSex(Sex.MALE); humanBeing.setIsJewish(false); humanBeing.setName("John"); } }
А теперь усложним задачу и проверим, если у нашего Джона мама еврейская.
public class Life { public static void main(String[] args) { HumanBeing humanBeing = new HumanBeing(); humanBeing.setSex(Sex.MALE); HumanBeing mother = humanBeing.getMother(); if (mother.getIsJewish()) humanBeing.setIsJewish(true); else humanBeing.setIsJewish(false); humanBeing.setName("John"); } }
А вот попробуем из нашего нееврейского мальчика Джона сделать еврейского Абрашу.
Теперь создаем нового человека. Предположим это нееврейский мальчик по имени Джон.
public class Life { public static void main(String[] args) { HumanBeing humanBeing = new HumanBeing(); humanBeing.setSex(Sex.MALE); humanBeing.setIsJewish(false); humanBeing.setName("John"); BeitDinCase beitDinCase = new BeitDinCase(humanBeing); if (beitDinCase.getIsPassedGiyur()) { humanBeing.setIsJewish(true); humanBeing.setName("Abraham"); if (humanBeing.getSex == Sex.MALE) humanBeing.setIsCircumcised(true); } } }