หัวข้อ
public
final
class
Topic
extends Object
java.lang.Object | |
↳ | android.adservices.topics.Topic |
แสดงผลลัพธ์หัวข้อจาก getTopics API
สรุป
ตัวสร้างแบบสาธารณะ | |
---|---|
Topic(long mTaxonomyVersion, long mModelVersion, int mTopicId)
สร้างออบเจ็กต์ที่แสดงผลลัพธ์จาก getTopics API |
เมธอดสาธารณะ | |
---|---|
boolean
|
equals(Object object)
บ่งชี้ว่าออบเจ็กต์อื่น "เท่ากับ" ออบเจ็กต์นี้หรือไม่ |
long
|
getModelVersion()
รับ ModelVersion |
long
|
getTaxonomyVersion()
รับ TaxonomyVersion |
int
|
getTopicId()
รับรหัสหัวข้อ |
int
|
hashCode()
แสดงผลค่ารหัสแฮชสําหรับออบเจ็กต์ |
String
|
toString()
แสดงผลออบเจ็กต์เป็นสตริง |
วิธีการที่รับช่วงมา | |
---|---|
ตัวสร้างแบบสาธารณะ
หัวข้อ
public Topic (long mTaxonomyVersion, long mModelVersion, int mTopicId)
สร้างออบเจ็กต์ที่แสดงผลลัพธ์จาก getTopics API
พารามิเตอร์ | |
---|---|
mTaxonomyVersion |
long : คำยาวที่ใช้แสดงถึงเวอร์ชันของการจัดหมวดหมู่ |
mModelVersion |
long : เลขฐานยาวที่แสดงเวอร์ชันของโมเดล |
mTopicId |
int : จำนวนเต็มแสดงรหัสที่ไม่ซ้ำของหัวข้อ |
เมธอดสาธารณะ
เท่ากับ
public boolean equals (Object object)
บ่งชี้ว่าออบเจ็กต์อื่น "เท่ากับ" ออบเจ็กต์นี้หรือไม่
เมธอด equals
ใช้ความสัมพันธ์ที่เทียบเท่ากันกับการอ้างอิงออบเจ็กต์ที่ไม่ใช่ค่า Null ดังนี้
- สะท้อนกลับ: สำหรับค่าอ้างอิงใดๆ ที่ไม่ใช่ค่า Null
x
x.equals(x)
ควรแสดงผลtrue
- สมมาตร: สำหรับค่าอ้างอิงใดๆ ที่ไม่ใช่ค่า Null
x
และy
x.equals(y)
ควรแสดงผลtrue
เฉพาะในกรณีที่y.equals(x)
แสดงผลtrue
- การเปลี่ยนผ่าน: สำหรับค่าอ้างอิงใดๆ ที่ไม่ใช่ค่า Null อย่าง
x
,y
และz
หากx.equals(y)
แสดงผลtrue
และy.equals(z)
แสดงผลtrue
x.equals(z)
ก็ควรแสดงผลtrue
ด้วย - มีความสอดคล้องกัน กล่าวคือ สำหรับค่าอ้างอิงที่ไม่เป็นค่าว่าง
x
และy
การเรียกx.equals(y)
หลายครั้งจะแสดงผลtrue
อย่างสม่ำเสมอ หรือแสดงผลfalse
อย่างสม่ำเสมอ หากไม่มีการแก้ไขข้อมูลที่ใช้ในการเปรียบเทียบequals
ของออบเจ็กต์ - สําหรับค่าอ้างอิง
x
ที่ไม่ใช่ค่า Null ควรแสดงผลfalse
x.equals(null)
เมธอด equals
สำหรับคลาส Object
ใช้ความสัมพันธ์ที่เทียบเท่ากันมากที่สุดที่เป็นไปได้กับออบเจ็กต์ กล่าวคือ สำหรับค่าอ้างอิง x
และ y
ที่ไม่ใช่ค่า Null เมธอดนี้จะแสดงผล true
เฉพาะในกรณีที่ x
และ y
อ้างอิงถึงออบเจ็กต์เดียวกัน (x == y
มีค่าเป็น true
)
โปรดทราบว่าโดยทั่วไปแล้วจำเป็นต้องลบล้างเมธอด hashCode
เมื่อใดก็ตามที่มีการลบล้างเมธอดนี้ เพื่อรักษาสัญญาทั่วไปสำหรับเมธอด hashCode
ซึ่งระบุว่าออบเจ็กต์ที่เท่ากันต้องมีโค้ดแฮชเท่ากัน
พารามิเตอร์ | |
---|---|
object |
Object : ออบเจ็กต์อ้างอิงที่จะเปรียบเทียบ |
คิกรีเทิร์น | |
---|---|
boolean |
true หากออบเจ็กต์นี้เหมือนกับอาร์กิวเมนต์ obj
false มิเช่นนั้น |
getModelVersion
public long getModelVersion ()
รับ ModelVersion
คิกรีเทิร์น | |
---|---|
long |
getTaxonomyVersion
public long getTaxonomyVersion ()
รับ TaxonomyVersion
คิกรีเทิร์น | |
---|---|
long |
getTopicId
public int getTopicId ()
รับรหัสหัวข้อ
คิกรีเทิร์น | |
---|---|
int |
hashCode
public int hashCode ()
แสดงผลค่ารหัสแฮชสําหรับออบเจ็กต์ วิธีนี้ได้รับการสนับสนุนเพื่อประโยชน์ของตารางแฮช เช่น ตารางแฮชที่ได้จาก HashMap
สัญญาทั่วไปของ hashCode
มีเนื้อหาดังนี้
- เมื่อใดก็ตามที่มีการเรียกใช้กับออบเจ็กต์เดียวกันมากกว่า 1 ครั้งระหว่างการเรียกใช้แอปพลิเคชัน Java เมธอด
hashCode
จะต้องแสดงผลลัพธ์จำนวนเต็มเดียวกันเสมอ เว้นแต่จะมีการแก้ไขข้อมูลที่ใช้ในการเปรียบเทียบequals
กับออบเจ็กต์ จำนวนเต็มนี้ไม่จำเป็นต้องสอดคล้องกันจากการดำเนินการครั้งหนึ่งของแอปพลิเคชันกับการดำเนินการอื่นของแอปพลิเคชันเดียวกัน - หากออบเจ็กต์ 2 รายการเท่ากันตามเมธอด
equals(Object)
การเรียกใช้เมธอดhashCode
กับออบเจ็กต์แต่ละรายการต้องให้ผลลัพธ์ที่เป็นจำนวนเต็มเดียวกัน - ไม่จําเป็นว่าหากออบเจ็กต์ 2 รายการไม่เท่ากันตามเมธอด
equals(java.lang.Object)
การเรียกใช้เมธอดhashCode
กับออบเจ็กต์แต่ละรายการต้องให้ผลลัพธ์ที่เป็นจำนวนเต็มที่แตกต่างกัน อย่างไรก็ตาม นักเขียนโปรแกรมควรทราบว่าการสร้างผลลัพธ์จำนวนเต็มที่แตกต่างกันสำหรับออบเจ็กต์ที่ไม่เท่ากันอาจช่วยปรับปรุงประสิทธิภาพของตารางแฮชได้
ฟังก์ชัน hashCode ที่กําหนดโดยคลาส Object
จะแสดงผลลัพธ์จำนวนเต็มที่ไม่ซ้ำกันสําหรับออบเจ็กต์ที่ไม่ซ้ำกัน (ระบบอาจใช้หรือไม่ใช้ hashCode เป็นฟังก์ชันบางอย่างของที่อยู่หน่วยความจำของออบเจ็กต์ ณ เวลาหนึ่งๆ)
คิกรีเทิร์น | |
---|---|
int |
ค่ารหัสแฮชสําหรับออบเจ็กต์นี้ |
toString
public String toString ()
แสดงผลออบเจ็กต์เป็นสตริง โดยทั่วไปแล้ว เมธอด toString
จะแสดงผลสตริงที่ "แสดงเป็นข้อความ" ออบเจ็กต์นี้ ผลลัพธ์ควรเป็นการแสดงข้อมูลแบบกระชับแต่ให้ข้อมูลครบถ้วนซึ่งอ่านง่าย
ขอแนะนําให้คลาสย่อยทั้งหมดลบล้างเมธอดนี้
เมธอด toString
สำหรับคลาส Object
จะแสดงผลสตริงที่ประกอบด้วยชื่อของคลาสที่ออบเจ็กต์เป็นอินสแตนซ์ อักขระ @ "@
" และการแสดงผลฐาน 16 ที่ไม่ลงนามของรหัสแฮชของออบเจ็กต์ กล่าวคือ เมธอดนี้จะแสดงผลสตริงที่เท่ากับค่าของ
getClass().getName() + '@' + Integer.toHexString(hashCode())
คิกรีเทิร์น | |
---|---|
String |
ตัวแทนสตริงของออบเจ็กต์ |