วิธีเพิ่มการอ้างอิงถึงพารามิเตอร์ method ใน javadoc?


313

มีวิธีเพิ่มการอ้างอิงไปยังพารามิเตอร์ของวิธีการอย่างน้อยหนึ่งรายการจากเนื้อหาเอกสารวิธีหรือไม่ สิ่งที่ต้องการ:

/**
 * When {@paramref a} is null, we rely on b for the discombobulation.
 *
 * @param a this is one of the parameters
 * @param b another param
 */
void foo(String a, int b)
{...}

คำตอบ:


367

เท่าที่ฉันสามารถบอกได้หลังจากอ่านเอกสารสำหรับ javadocแล้วไม่มีคุณสมบัติดังกล่าว

อย่าใช้<code>foo</code>ตามคำแนะนำในคำตอบอื่น ๆ {@code foo}คุณสามารถใช้ นี่เป็นสิ่งที่ดีโดยเฉพาะเมื่อคุณอ้างถึงประเภททั่วไปเช่น{@code Iterator<String>}- แน่นอนว่าดูดีกว่า<code>Iterator&lt;String&gt;</code>ไม่ใช่!


@codeแท็กอธิบายไว้ในJavadoc - คำอธิบายแท็ก ดูตัวอย่างการใช้งานในรหัส JDK8
pba

59

อย่างที่คุณเห็นใน Java Source ของ java.lang.String class:

/**
 * Allocates a new <code>String</code> that contains characters from
 * a subarray of the character array argument. The <code>offset</code>
 * argument is the index of the first character of the subarray and
 * the <code>count</code> argument specifies the length of the
 * subarray. The contents of the subarray are copied; subsequent
 * modification of the character array does not affect the newly
 * created string.
 *
 * @param      value    array that is the source of characters.
 * @param      offset   the initial offset.
 * @param      count    the length.
 * @exception  IndexOutOfBoundsException  if the <code>offset</code>
 *               and <code>count</code> arguments index characters outside
 *               the bounds of the <code>value</code> array.
 */
public String(char value[], int offset, int count) {
    if (offset < 0) {
        throw new StringIndexOutOfBoundsException(offset);
    }
    if (count < 0) {
        throw new StringIndexOutOfBoundsException(count);
    }
    // Note: offset or count might be near -1>>>1.
    if (offset > value.length - count) {
        throw new StringIndexOutOfBoundsException(offset + count);
    }

    this.value = new char[count];
    this.count = count;
    System.arraycopy(value, offset, this.value, 0, count);
}

การอ้างอิงพารามิเตอร์ถูกล้อมรอบด้วย<code></code>แท็กซึ่งหมายความว่าไวยากรณ์ Javadoc ไม่ได้ให้วิธีการทำสิ่งใด ๆ (ฉันคิดว่า String.class เป็นตัวอย่างที่ดีของการใช้ javadoc)


5
แท็ก <code> </code> ไม่ได้อ้างอิงพารามิเตอร์เฉพาะ มันกำลังจัดรูปแบบคำว่า "String" เป็น "การค้นหาโค้ด" ข้อความ
Naxos84

46

วิธีที่ถูกต้องในการอ้างถึงพารามิเตอร์ method เป็นดังนี้:

ป้อนคำอธิบายรูปภาพที่นี่


2
สิ่งนี้จะไม่เพิ่มอะไรให้กับคำตอบที่มีอยู่ โปรดลบทิ้ง
suriv

27
ไม่เพียงตอบคำถามเท่านั้น แต่ยังอธิบายวิธีแก้ไข Javadoc ด้วยพารามิเตอร์ที่ใช้ IDE เช่น Intellij สิ่งนี้จะเป็นประโยชน์สำหรับผู้ค้นหาที่กำลังมองหาคำตอบ
Eurig Jones

1
บน Eclipse มันไม่ทำงาน แต่มันเป็นคำตอบที่ดีกระนั้น
Henrique de Sousa

2
ควรลบสิ่งนี้ ลองนึกภาพไม่มีอีกต่อไป
user4504267

2
@ user4504267 ภาพดูดีอย่างน้อยตอนนี้
ErikE

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.