Получить название поля

Возможно ли в Java получить имя поля в строке из фактического поля? любить:

public class mod {
    @ItemID
    public static ItemLinkTool linkTool;

    public void xxx{
        String fieldsName = *getFieldsName(linkTool)*;
    }
}

PS: яне ищет поле / имя класса или получает Field от имени в String.

РЕДАКТИРОВАТЬ: Когда я смотрю на это, мне, вероятно, не понадобится метод, чтобы получить имя поля, экземпляр Field (из "кодового имени" поля) будет достаточно. [например.Field myField = getField(linkTool)]

В самой Java, вероятно, нет ничего, чего я хочу. Я посмотрю на библиотеку ASM, но в итоге я могу использовать строку в качестве идентификатора для полей: /

РЕДАКТИРОВАТЬ 2: Мой английский не очень хороший (но даже на моем родном языке у меня были бы проблемы с объяснением этого), поэтому я добавляю еще один пример. Надеюсь, теперь будет понятнее:

public class mod2 {
    @ItemID
    public static ItemLinkTool linkTool;

    @ItemID
    public static ItemLinkTool linkTool2;

    @ItemID
    public static ItemPipeWrench pipeWrench;

    public void constructItems() {
        // most trivial way
        linkTool = new ItemLinkTool(getId("linkTool"));
        linkTool2 = new ItemLinkTool(getId("linkTool2"));
        pipeWrench = new ItemPipeWrench(getId("pipeWrench"));

        // or when constructItem would directly write into field just
        constructItem("linkTool");
        constructItem("linkTool2");
        constructItem("pipeWrench");

        // but I'd like to be able to have it like this
        constructItemIdeal(linkTool);
        constructItemIdeal(linkTool2);
        constructItemIdeal(pipeWrench);
    }

    // not tested, just example of how I see it
    private void constructItem(String name){
        Field f = getClass().getField(name);
        int id = getId(name);

        // this could be rewritten if constructors take same parameters
        // to create a new instance using reflection
        if (f.getDeclaringClass() == ItemLinkTool){
            f.set(null, new ItemLinkTool(id));
        }else{
            f.set(null, new ItemPipeWrench(id));
        }
    }
}

Вопрос: как может выглядеть метод constructItemIdeal? (Из ответов и поисков, я думаю, что это не возможно в Java, но кто знает ...)

Ответы на вопрос(7)

Ваш ответ на вопрос