ความรู้เบื้องต้นเกี่ยวกับคำอธิบายประกอบ Java
การพัฒนา Java ที่ใช้คำอธิบายประกอบถือเป็นแนวโน้มการพัฒนาล่าสุดอย่างไม่ต้องสงสัย [หมายเหตุของผู้แปล: นี่เป็นบทความจากปี 2005 ในปี 2014 ไม่ต้องสงสัยเลยว่าการใช้คำอธิบายประกอบได้กลายเป็นทางออกที่ดีสำหรับการพัฒนาการทำงานร่วมกันแบบหลายคนในสหกรณ์ ลักษณะ อิทธิพลซึ่งกันและกัน และการมีเพศสัมพันธ์อาจต่ำมาก]
การพัฒนาตามคำอธิบายประกอบช่วยให้นักพัฒนา Java เป็นอิสระจากไฟล์การกำหนดค่าที่ยุ่งยากและยุ่งยาก คำอธิบายประกอบถูกนำมาใช้เป็นครั้งแรกใน Java 5.0 คำอธิบายประกอบเป็นหนึ่งในคุณสมบัติของ JDK เวอร์ชันนี้ โดยถ่ายโอนงานของโปรแกรมเมอร์เพื่อเขียนไฟล์ API ตัวอย่าง Java ไปยังคอมไพเลอร์ โค้ดและเอกสารประกอบจะง่ายต่อการบำรุงรักษาเมื่อไม่มีการบำรุงรักษาซอร์สโค้ดและเอกสารประกอบ API อีกต่อไป ตัวอย่างโค้ดที่สร้างขึ้นยังมีโอกาสน้อยที่จะมีข้อบกพร่องอีกด้วย
คำอธิบายประกอบ Java เป็นหนึ่งในคุณสมบัติหลักใน JDK 5 ทำให้การพัฒนาง่ายขึ้นและง่ายขึ้น คำอธิบายประกอบเป็นเหมือนข้อมูลเมตาชนิดหนึ่ง (เมตาซึ่งสามารถเข้าใจได้ว่าเป็นข้อมูลเพิ่มเติมเพื่อให้โปรแกรมพิเศษดู) และสามารถเพิ่มลงในโค้ดได้ ซึ่งสามารถใช้ในการประกาศแพ็คเกจ การประกาศประเภท ตัวสร้าง วิธีการ ฟิลด์ พารามิเตอร์ และตัวแปร พวกมันจัดเตรียมวิธีที่มีประสิทธิภาพในการระบุว่าเมธอดขึ้นอยู่กับเมธอดอื่น เสร็จสมบูรณ์หรือไม่ คลาสอ้างอิงถึงคลาสอื่นหรือไม่ เป็นต้น
อ้างอิงจากเว็บไซต์อย่างเป็นทางการของ Oracle ว่า "มัน (การพัฒนาตามคำอธิบายประกอบ) ช่วยให้เราหลีกเลี่ยงการต้องเขียนเอกสาร API แยกต่างหากในหลายกรณี เราจำเป็นต้องเปิดใช้งานเครื่องมือเพื่อสร้างคำอธิบายประกอบจากซอร์สโค้ด รูปแบบการเขียนโปรแกรมที่เปิดเผยนี้ได้รับ โปรแกรมเมอร์บอกว่าต้องทำอะไรก็แค่ปล่อยให้เครื่องมือทำตามโค้ด"
พูดง่ายๆ ก็คือ คำอธิบายประกอบเป็นกลไกที่เชื่อมโยงเมตาแท็กกับองค์ประกอบของโปรแกรม ช่วยให้คอมไพเลอร์หรือ JVM สามารถแยกพฤติกรรมของโปรแกรมออกจากองค์ประกอบที่มีคำอธิบายประกอบ และสร้างโค้ดที่พึ่งพาซึ่งกันและกันเมื่อจำเป็น
ในส่วนแรกของบทความชุดนี้ ฉันจะแนะนำคำอธิบายประกอบ Java พื้นฐาน ประโยชน์ และตัวอย่างการใช้งานบางส่วน
ข้อมูลเบื้องต้นเกี่ยวกับคำอธิบายประกอบ Java
คุณต้องเข้าใจสองสิ่ง หนึ่งคือ "คำอธิบายประกอบ" (คำอธิบายประกอบที่คล้ายกับออบเจ็กต์ใหม่) และอีกอย่างคือ "ประเภทคำอธิบายประกอบ" (ประเภทคำอธิบายประกอบคล้ายกับคำจำกัดความของคลาส) ใช้ในโค้ดของคุณ จริงๆ แล้วมันมีวงจรชีวิตและขอบเขตของการใช้งาน ประเภทคำอธิบายประกอบจะใช้เพื่อกำหนดคำอธิบายประกอบ คุณจะใช้มันเมื่อคุณต้องการสร้างคำอธิบายประกอบของคุณเอง type คือประเภทที่สร้างขึ้นจริงที่ใช้ และคำอธิบายประกอบเป็นเพียงการใช้งานเฉพาะของประเภทนั้น
เมื่อกำหนดประเภทคำอธิบายประกอบ คุณต้องใช้เครื่องหมาย "at" (@ ซึ่งบางคนในประเทศจีนออกเสียงเป็นวงกลม) ตามด้วยอินเทอร์เฟซคำหลัก บวกกับชื่อของคำอธิบายประกอบ ในทางกลับกัน โดยใช้แบบฟอร์ม ของคำอธิบายประกอบนั้น ขั้นแรกให้เขียนสัญลักษณ์ "at" (@) ตามด้วยประเภทคำอธิบายประกอบ นี่เป็นรูปแบบที่ง่ายที่สุดของคำอธิบายประกอบ นอกจากนี้ เมื่อใช้คำอธิบายประกอบ คุณสามารถเพิ่มวงเล็บหลังชื่อเพื่อรวมพารามิเตอร์ที่ต้องการได้ ผ่านไป ต่อไปคุณจะเห็นตัวอย่าง:
ตัวอย่างการกำหนดประเภทคำอธิบายประกอบ: (ประเภทคำอธิบายประกอบ ประเภทคำอธิบายประกอบ คล้ายกับการกำหนดคลาส)
คัดลอกรหัสรหัสดังต่อไปนี้:
สาธารณะ @interface MyAnnotation {
สตริง doSomething();
-
การใช้คำอธิบายประกอบ (Annotation instance) ในโค้ดปกติ
คัดลอกรหัสรหัสดังต่อไปนี้:
@MyAnnotation (ทำบางสิ่งบางอย่าง = "สิ่งที่ต้องทำ")
โมฆะสาธารณะ mymethod() {
-
-
ประเภทคำอธิบายประกอบ Java (ประเภทคำอธิบายประกอบ)
คำอธิบายประกอบมีสามประเภท:
เครื่องหมาย: คำอธิบายประกอบประเภทเครื่องหมายไม่มีองค์ประกอบ มีเพียงชื่อเท่านั้น
คำนิยาม:
คัดลอกรหัสรหัสดังต่อไปนี้:
// คำอธิบายประกอบประเภทนี้เปรียบเสมือนป้ายกำกับที่ไม่มีสถานะ
// เหมือนกับอินเทอร์เฟซ Serializable โดยไม่มีคำจำกัดความของเมธอด
สาธารณะ @interface AMarkerAnnotation {
-
ใช้:
คัดลอกรหัสรหัสดังต่อไปนี้:
@AMarkerคำอธิบายประกอบ
โมฆะสาธารณะ mymethod() {
-
-
คำอธิบายประกอบองค์ประกอบเดียว: คำอธิบายประกอบองค์ประกอบเดียวหรือค่าเดียวมีข้อมูลเดียวเท่านั้น โดยสามารถแสดงเป็น data=value ในวงเล็บ หรือสามารถส่งผ่านได้เพียงค่าเดียวเท่านั้น (วิธีการเขียนแบบง่าย)
คำนิยาม:
คัดลอกรหัสรหัสดังต่อไปนี้:
สาธารณะ @interface SingleElementAnnotation
-
สตริง doSomething();
-
ใช้:
คัดลอกรหัสรหัสดังต่อไปนี้:
@SingleElementAnnotation ("คุณสามารถส่งค่าประเภทที่เกี่ยวข้องเท่านั้น")
โมฆะสาธารณะ mymethod() {
-
-
คำอธิบายประกอบแบบค่าเต็มหรือหลายค่า: คำอธิบายประกอบประเภทค่าเต็มมีสมาชิกข้อมูลหลายตัว ดังนั้น พารามิเตอร์จะต้องถูกส่งผ่านโดยใช้รูปแบบไวยากรณ์ data=value ที่สมบูรณ์สำหรับสมาชิกแต่ละคน
คำนิยาม:
คัดลอกรหัสรหัสดังต่อไปนี้:
สาธารณะ @interface FullValueAnnotation {
สตริง doSomething();
นับจำนวน;
วันที่ของสตริง ();
-
ใช้:
คัดลอกรหัสรหัสดังต่อไปนี้:
@FullValueAnnotation (ทำบางอย่าง = "ค่าพารามิเตอร์", นับ = 1,
วันที่="09-09-2005")
โมฆะสาธารณะ mymethod() {
-
-
ข้อควรพิจารณาในการกำหนดประเภทคำอธิบายประกอบ Java
สิ่งที่ควรทราบเมื่อกำหนดประเภทคำอธิบายประกอบ:
1. การประกาศคำอธิบายประกอบควรเริ่มต้นด้วยสัญลักษณ์ at (@) ตามด้วยคีย์เวิร์ดของอินเทอร์เฟซ และชื่อของคำอธิบายประกอบ
2. การประกาศวิธีการในคำอธิบายประกอบไม่ยอมรับพารามิเตอร์ใดๆ (ดูเหมือนเป็นเพียงวิธีการ แต่โดยพื้นฐานแล้วคือโดเมนแอตทริบิวต์)
3. การประกาศเมธอดในคำอธิบายประกอบต้องไม่มี Throw clause
4. ประเภทการส่งคืนเมธอดในคำอธิบายประกอบสามารถเป็นได้ดังต่อไปนี้เท่านั้น:
@primitives (ชนิดข้อมูลพื้นฐาน 6 ชนิด, int, ไบต์ ฯลฯ)
@สตริง(สตริง)
@Class(คลาส เช่น String.class)
@enum(แจงนับ)
@array ประเภทข้างต้น (อาร์เรย์ องค์ประกอบอาร์เรย์สามารถเป็นประเภทใดประเภทหนึ่งข้างต้นได้เท่านั้น)
ประเภทคำอธิบายประกอบ Java
คำอธิบายประกอบใน JDK5 มีสองประเภท:
1. คำอธิบายประกอบแบบง่าย (ประเภทคำอธิบายประกอบแบบง่าย): เหล่านี้เป็นประเภทพื้นฐานที่ Tiger ให้ไว้ (Tiger เป็นชื่อรหัสของ JDK1.5?) และสามารถใช้เพื่อใส่คำอธิบายประกอบโค้ดธรรมดาเท่านั้น โดยไม่สามารถใช้เพื่อสร้างประเภทคำอธิบายประกอบแบบกำหนดเองอื่นได้ .
2.คำอธิบายประกอบ Meta: ออกแบบมาโดยเฉพาะสำหรับการประกาศคำอธิบายประกอบประเภทอื่น ๆ พูดง่ายๆ ก็คือเรียกว่าคำอธิบายประกอบของคำอธิบายประกอบ