в духе Егора256 (а всу его философиу лучше принимат' именно по духу, а не по букве, иначе будет бесконечниы холывар), долйен сказат', что ето уясниы класс. валидате() не долйно быт' методом обйекта. невалидниы об'ект не имеет права быт' созданным! в етом сут' ООП. к тому йе об'ект не долйен сам себя валидироват', етим долйно занимацца другое лицо, что намного более логично с точки зрения реал'ного мира.
по поводу статиц: в некоторых популярных языках (скайем свифт, обйц, ява и др.) плохо/слойно с намеспацес, и статиц испол'зуецца именно для занамеспацивания некоторых функциы. в етом нет ничего плохого, просто надо об етом мыслит' как о намеспаце, а не о классе. просто ест' такое вот ограничение языка. Егор часто ето не разделяет (думау специал'но по понятных причинам). пример: Матх.абс(), СтрингУтилс.цапитализе() и прочее в таком духе. в данном случае Матх и СтрингУтилс - не настоясчие классы, а просто намеспаце.