public class Solution {

    public static class Person {
        String firstName;
        String lastName;
//По условию задачи это поле должно быть transient. Но почему? Поле инициализируется в конструкторе, но при дессериализации он не вызывается //(вызывается только пустой конструктор базового класса).
        String fullName;
        final String greetingString;
        String country;
        Sex sex;
        PrintStream outputStream;
        Logger logger;

        Person(String firstName, String lastName, String country, Sex sex) {
            this.firstName = firstName;
            this.lastName = lastName;
            this.fullName = String.format("%s, %s", lastName, firstName);
            this.greetingString = "Hello, ";
            this.country = country;
            this.sex = sex;
            this.outputStream = System.out;
            this.logger = Logger.getLogger(String.valueOf(Person.class));
        }
    }

    enum Sex {
        MALE,
        FEMALE
    }

    public static void main(String[] args) {

    }
}