[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"question-java-core-esli-vy-khotite-pereopredelit-equals-kakie-usloviya-dolzhny-vypolnyatsya":3},{"id":4,"slug":5,"topicId":6,"topicSlug":7,"topicName":8,"topicEmoji":9,"question":10,"answer":11,"codeLang":12,"codeSrc":12,"important":12,"commonMistakes":12,"modernUsage":12,"difficulty":13,"tags":14,"related":18,"progress":19,"seo":20},80,"esli-vy-khotite-pereopredelit-equals-kakie-usloviya-dolzhny-vypolnyatsya",2,"java-core","Java Core","☕","Если вы хотите переопределить `equals()`, какие условия должны выполняться?","Переопределённый метод `equals()` должен порождать отношение эквивалентности, обладающее свойствами рефлексивности, симметричности, транзитивности и непротиворечивости. Для любой ненулевой ссылки `x` выражение `x.equals(null)` должно возвращать `false`.","","junior",[15,16,17],"core","equals","override",[],null,{"title":21,"description":22,"ogTitle":21,"ogDescription":23,"keywords":24,"schemaAnswer":29,"featuredSnippetReady":30},"Условия переопределения equals() в Java — Gymterview","Какие условия должны выполняться при переопределении метода equals() в Java: рефлексивность, симметричность, транзитивность, непротиворечивость.","Условия контракта метода equals(): рефлексивность, симметричность, транзитивность, непротиворечивость.",[25,26,27,28],"переопределение equals Java","контракт equals","override equals","условия equals","При переопределении equals() должны выполняться следующие условия: рефлексивность (x.equals(x) == true), симметричность (x.equals(y) == y.equals(x)), транзитивность (если x.equals(y) и y.equals(z), то x.equals(z)), непротиворечивость (многократные вызовы дают одинаковый результат при неизменных данных), а также x.equals(null) должно возвращать false.",true]