Как отправлять сообщения об ошибках с Nlog + Asp.net Core 2.1 + SendGrid?

Прежде всего, вы знаете, почему вам нужно создать неизменяемый объект и каковы преимущества непреложного объекта.

Преимущества объекта Immutable

Параллелизм и многопоточность Это автоматически Thread-safe, так что проблема синхронизации .... и т. Д.

Не нужно copy constructor Не нужно внедрять клон . Класс не может be override Сделать поле в качестве частных и окончательных участников принудительной сборки для полного создания объекта за один шаг, вместо использования конструктора no-Argument

Неизменяемые объекты - это просто объекты, состояние которых означает, что данные объекта не могут измениться после создания неизменяемого объекта.

см. Ниже код.

public final class ImmutableReminder{
    private final Date remindingDate;

    public ImmutableReminder (Date remindingDate) {
        if(remindingDate.getTime() < System.currentTimeMillis()){
            throw new IllegalArgumentException("Can not set reminder" +
                    " for past time: " + remindingDate);
        }
        this.remindingDate = new Date(remindingDate.getTime());
    }

    public Date getRemindingDate() {
        return (Date) remindingDate.clone();
    }
}
0
задан chobo2 28 February 2019 в 19:34
поделиться