Видео: Java хэл дээр overriding equals аргыг юу ашигладаг вэ?
2024 Зохиолч: Lynn Donovan | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2023-12-15 23:50
Тэнцүү тоог хүчингүй болгох болон hashCode in Java
тэнцүү байна () арга байна ашигласан hashCode байхад объектуудыг тэгш байдлын үүднээс харьцуулах ашигласан тухайн объектод харгалзах бүхэл тооны кодыг үүсгэх
Эндээс Java хэл дээр тэнцүү аргыг юу гэж ашигладаг вэ?
The тэнцүү байна () арга тэгш байдлын үүднээс хоёр объектыг харьцуулж, хэрэв байгаа бол үнэнийг буцаана тэнцүү . The тэнцүү байна () арга Object ангид өгөгдсөн ашигладаг хоёр объект байгаа эсэхийг тодорхойлох оператор (==). тэнцүү . Анхдагч өгөгдлийн төрлүүдийн хувьд энэ нь зөв үр дүнг өгдөг.
Нэмж хэлэхэд, та Java хэл дээрх тэнцүү аргыг хэрхэн хүчингүй болгох вэ? Дээрх кодын ангид Person нь дарагдсан тэнцүү() аргатай бөгөөд дараах алхам алхмаар аргачлалыг хэрэгжүүлсэн:
- Хэрэв энэ объектын лавлагаа нь аргумент объектын лавлагаатай ижил байвал үнэнийг буцаана.
- Хэрэв аргумент нь хоосон байвал худал буцаана.
- Хэрэв объектууд нэг ангид хамаарахгүй бол false гэж буцаана.
Үүний дагуу бид яагаад Java хэл дээрх тэнцүү аргыг хүчингүй болгох хэрэгтэй байна вэ?
String анги хүчингүй болгодог нь тэнцүү арга Энэ нь Object ангиас удамшсан бөгөөд хоёр String объектыг тэмдэгтээр нь харьцуулах логикийг хэрэгжүүлсэн. Шалтгаан нь тэнцүү арга Object ангид тэгш байдлын лавлагаа нь өөр юу хийхээ мэдэхгүй байгаатай холбоотой юм.
Java хэл дээр hashCode ба тэнцүү аргыг хүчингүй болгох нь юу вэ?
хэрвээ анги нь дарагдвал тэнцүү байна , байх ёстой hashCode-г хүчингүй болгох . тэд хоёулаа байх үед дарагдсан , тэнцүү байна болон hashCode ёстой ашиглах ижил талбаруудын багц. хэрэв хоёр объект байгаа бол тэнцүү , дараа нь тэдний hashCode үнэт зүйлс байх ёстой тэнцүү түүнээс гадна. хэрэв объект өөрчлөгдөхгүй бол hashCode нь кэш хийх, залхуу эхлүүлэхэд нэр дэвшигч юм.
Зөвлөмж болгож буй:
Java хэл дээр HashMap-г жишээн дээр хэрхэн ашигладаг вэ?
Жишээ нь Java хэл дээрх HashMap. HashMap нь Газрын зураг дээр суурилсан цуглуулгын анги бөгөөд түлхүүр ба утгын хосыг хадгалахад ашигладаг бөгөөд үүнийг HashMap эсвэл HashMap гэж тэмдэглэдэг. Энэ нь захиалгат цуглуулга биш бөгөөд энэ нь түлхүүрүүд болон утгуудыг HashMap-д оруулсан дарааллаар нь буцааж өгөхгүй гэсэн үг юм
С # хэл дээр бид хэзээ статик аргыг ашиглах ёстой вэ?
Та статик аргуудыг хэзээ ашиглахыг хүсч болох зарим жишээг энд үзүүлэв: Функц нь ямар ч гишүүн хувьсагчийг ашиглахгүй байх үед. Объект үүсгэхийн тулд үйлдвэрийн аргыг ашиглах үед. Та тухайн ангийн тохиолдлын тоог хянах эсвэл өөр аргаар хянаж байх үед. Тогтмол тоонуудыг зарлахдаа
Java хэл дээр хог цуглуулахад ямар аргыг ашигладаг вэ?
Gc() аргыг хог цуглуулагчийг тодорхой дууддаг. Гэсэн хэдий ч gc() арга нь JVM нь хог цуглуулах ажлыг гүйцэтгэх баталгаа болохгүй. Энэ нь зөвхөн JVM-ээс хог цуглуулах хүсэлт гаргадаг. Энэ арга нь System болон Runtime ангид байдаг
Бид яагаад жишээн дээр Java хэл дээр боодлын анги ашигладаг вэ?
Java Wrapper ангийн давуу тал Эдгээр нь анхдагч өгөгдлийн төрлүүдийг объект болгон хөрвүүлэхэд хэрэглэгддэг (Өгөгдсөн аргад аргумент дамжуулах шаардлагатай үед объектууд хэрэгтэй болно). util нь зөвхөн объекттой харьцдаг ангиудыг агуулдаг тул энэ тохиолдолд ч бас тусалдаг. Өгөгдлийн бүтэц нь зөвхөн объект болон анхдагч өгөгдлийн төрлүүдийг хадгалдаг
Java JDBC дээр драйвер ачаалахад ямар аргыг ашигладаг вэ?
ForName() Драйверыг бүртгэх хамгийн түгээмэл арга бол Java-ийн Class ашиглах явдал юм. forName() арга нь драйверын ангиллын файлыг санах ойд динамикаар ачаалах бөгөөд үүнийг автоматаар бүртгэдэг. Энэ арга нь жолоочийн бүртгэлийг тохируулж, зөөврийн болгох боломжийг олгодог тул илүү тохиромжтой