[Java v49] equals és hashCode смотреть онлайн
Két nagyon fontos metódus az Object osztályban amik használatával rengeteg helyen találkozunk explicit vagy implicit módon, és ezért nagyon fontos hogy jól megértsük a működésüket illetve, hogy mi a kapcsolat a két metódus között (ezért is mutatom be őket egy videóban).
Az equals() metódus nagyon leegyszerűsítve logikai értelemben vett egyenlőséget vizsgál, tehát amikor két objektum azért számít egyenlőnek, mert ugyanazt a modellbeli értéket reprezentálják (pl. két ember objektum amelyek ugyanazt a név, cím, születési hely és év értéket hordozzák). Ez eltér az == operátor által eddig megismert egyenlőségtől, mert ugyan a primitív típusoknál mindig érték szerinti egyenlőséget jelent, a referencia változók esetén ez nem érvényesül: két referenciaváltozót hasonlítva az == operátorral tényleges azt vizsgáljuk, hogy a két változó ugyanarra a memóriabeli objektumra hivatkozik-e, míg az equals() metódus nem ezt mondja meg, hanem hogy a két objektum által reprezentált értékek megegyeznek-e. Fontos hogy míg az előbbire nincs direkt ráhatásunk, az utóbbira lehet, hiszen az equals() metódus működését mi határozhatjuk meg.
A hashCode() metódus az objektum "hash" értékét adja vissza, mi igazából az objektum releváns tulajdonságértékeiből számított érték, gyakorlatilag egy leképezése az objektumnak egy egész számra. Fontos hogy a hashCode() ugyanazokat a példányváltozókat kell használja a számítása során mint az equals() metódus is használ, ugyanis a Java API kimondja, hogyha két objektum egyenlő equals() szerint akkor a hashCode() által adott érték is meg kell hogy egyezzen, viszont ez fordított irányban nem feltétlenül igaz.
Java programozás sorozat: https://www.youtube.com/playlist?list=PL45FGlNxfdFS4MzTfG4XXWqpXuzA7wgMq
Fejeztek:
0:00 Bevezető
0:33 equals() vs ==
6:10 equals() tulajdonságai
9:28 equals() implementációja
18:30 equals() működésének magyarázata
23:42 hashCode() tulajdonságai
27:32 hashCode() implementációja
33:04 equals() és hashCode() generálása
38:52 Objects osztály metódusai
Forrás: https://docs.oracle.com/javase/tutorial/java/IandI/objectclass.html
Cover: https://unsplash.com/photos/nDd3dIkkOLo
Duke: https://hu.wikipedia.org/wiki/F%C3%A1jl:Duke_(Java_mascot)_waving.svg
Source: https://github.com/javaprogramozas/java-reprogramozas
Что делает видео по-настоящему запоминающимся? Наверное, та самая атмосфера, которая заставляет забыть о времени. Когда вы заходите на RUVIDEO, чтобы посмотреть онлайн «[Java v49] equals és hashCode» бесплатно и без регистрации, вы рассчитываете на нечто большее, чем просто загрузку плеера. И мы это понимаем. Контент такого уровня заслуживает того, чтобы его смотрели в HD 1080, без дрожания картинки и бесконечного буферизации.
Честно говоря, Rutube сегодня — это кладезь уникальных находок, которые часто теряются в общем шуме. Мы же вытаскиваем на поверхность самое интересное. Будь то динамичный экшн, глубокий разбор темы от любимого автора или просто уютное видео для настроения — всё это доступно здесь бесплатно и без лишних формальностей. Никаких «заполните анкету, чтобы продолжить». Только вы, ваш экран и качественный поток.
Если вас зацепило это видео, не забудьте взглянуть на похожие материалы в блоке справа. Мы откалибровали наши алгоритмы так, чтобы они подбирали контент не просто «по тегам», а по настроению и смыслу. Ведь в конечном итоге, онлайн-кинотеатр — это не склад файлов, а место, где каждый вечер можно найти свою историю. Приятного вам отдыха на RUVIDEO!
Видео взято из открытых источников Rutube. Если вы правообладатель, обратитесь к первоисточнику.