2009-11-03 30 views
247

Có cách nào để thêm tham chiếu vào một hoặc nhiều tham số của phương thức từ phần thân tài liệu phương pháp không? Một cái gì đó như:Cách thêm tham chiếu vào tham số phương thức trong javadoc?

/** 
* 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) 
{...} 

Trả lời

290

Theo như tôi có thể biết sau khi đọc the docs for javadoc, không có tính năng nào như vậy.

Không sử dụng <code>foo</code> như được đề xuất trong các câu trả lời khác; bạn có thể sử dụng {@code foo}. Điều này đặc biệt tốt khi biết khi bạn tham khảo một loại chung chung như {@code Iterator<String>} - chắc chắn trông đẹp hơn <code>Iterator&lt;String&gt;</code>, phải không!

8

Tôi đoán bạn có thể viết doclet hoặc thẻ nhỏ để hỗ trợ hành vi này.

Taglet Overview

Doclet Overview

+13

Và hiện một yêu cầu kéo để javadoc :) –

53

Như bạn có thể nhìn thấy trong nguồn Java của lớp java.lang.String:

/** 
* 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); 
} 

tài liệu tham khảo thông số được bao quanh bởi <code></code> thẻ, có nghĩa là Cú pháp Javadoc không cung cấp bất kỳ cách nào để làm một điều như vậy. (Tôi nghĩ String.class là một ví dụ tốt về cách sử dụng javadoc).

+22

Đây là cũ. Chuỗi được ghi lại bằng {@code foo} –

+2

Thẻ không tham chiếu đến thông số cụ thể. Đó là định dạng từ "Chuỗi" thành văn bản "tìm kiếm mã". – Naxos84

10

Cách đúng đề cập đến một số phương pháp là như thế này:

enter image description here

+0

Điều này không thêm bất cứ điều gì vào câu trả lời hiện có. Làm ơn xóa nó đi. – suriv

+7

Nó không chỉ trả lời câu hỏi mà còn giải thích trực quan cách sửa đổi Javadoc với tham số bằng cách sử dụng một IDE như Intellij. Điều này sẽ hữu ích cho những người tìm kiếm đang tìm kiếm câu trả lời. –

+0

Trên Eclipse nó không hoạt động. Nhưng đó là một câu trả lời tốt đẹp tuy nhiên –

Các vấn đề liên quan