сперва определен сеттер с двумя проверками на корректность значения.
addWater - долить водички . берет значение внутренней переменной , добавляет сколько вы указали в параметре функции. вызывается сеттер для суммы. Если перельете, то автоматом получите ошибку.
https://learn.javascript.ru/getters-setters - Там откуда скопировали разве непонятно объяснено ?