2012-06-01 5 views
37

я нахожу это чрезвычайно полезно использовать Ctrl (Cmd) + о ярлыке на Eclipse, чтобы найти поле члена или методу в классе (и использовать его снова, чтобы получить те из суперкласса).Быстрый поиск поля или метода в рабочей области в Eclipse

Однако я хотел бы знать, есть ли аналогичный способ быстрого поиска в проекте и/или рабочей области для поля или метода, которым вы знаете имя, но не там, где оно (аналогично тому, как это делается для найти тип Ctrl (ЦМД) + Сдвиг + T или ресурс Ctrl (ЦМД) + Сдвиг + R).

Если нет, где я могу его запросить?

+2

Кстати, может быть, это очевидно, но я нашел его только сегодня - если вы ищете участника или метод, имя которого вы не знаете наверняка - вы должны нажать ctrl + o, введите asterisk (* знак) в поле редактирования, а затем введите часть имени, которое вы ищете. Поэтому я имею в виду, что он поддерживает маски. Конечно, он будет искать в текущем классе. Очень полезно! – Tertium

ответ

32

Ближайший вещь, которую я знаю это Java Search, которая позволяет определить поиски метода, поля, класс и т.д. Если вы находитесь в перспективе Java или Java Browsing, Ctrl + H откроет диалог поиска с помощью поиска Java в качестве выбранного типа.

Если вы хотите, чтобы запросить возможность или изменения, введите его в Eclipse's Bugzilla. Имейте в виду, что отставание запросов функций - HUGE, поэтому самый эффективный способ привлечь внимание - это взять инициативу и отправить патч.

+0

Да, я знаю об этом, но, учитывая, что структура всего рабочего пространства индексируется (и, следовательно, огромные издержки памяти между прочим), я думаю, что это было бы очень полезно. – pablisco

+0

Я не уверен, насколько практичен прямой поиск (ala 'Ctrl + Shift + T') для членов; число членов, вероятно, не менее 10x - количество классов в среднем рабочем пространстве. Кстати, я уверен, что весь индекс Java не все время находится в памяти. –

0

Самый быстрый способ, о котором я знаю, - использовать ctrl+h, чтобы открыть диалоговое окно поиска Java.

+1

cmd + h скрывает приложение на Mac;) – pablisco

+1

@pablisco отредактировал ответ и удалил cmd + h, чтобы избежать путаницы – reevesy

4

С ctrl+h у вас будет еще несколько вариантов поиска.

Под опцией поиска Java вы можете найти поиск type, method, package, constuctor, field.

Также вы можете найти опцию «Ограничить», чтобы сузить результаты поиска и получить точный результат поиска!

0

ctrl+h выведет вариант поиска java. Введите строку и посмотрите. Он также имеет разные шаблоны, такие как .java, .jsp, затем выберите область, затем поиск.

45

ctrl+o (cmd+o) открывает быстрый контур, где вы можете искать метод в текущем классе. Повторное нажатие ctrl+o расширяет область поиска до полной иерархии классов.

+1

О, мужик! Спасибо тебе за это! Это именно то, что я искал! При работе с кодом, который я раньше не видел, я часто жалел, что есть какой-то способ узнать, есть ли у класса, к которому я имел доступ к определенным объектам или нет. Это делает именно это! Еще раз спасибо! – Bonz0

+0

недостатком является то, что вы должны быть в классе, где был объявлен метод. Разве нет схемы, сгруппированной по классу всего проекта. Просто интересуюсь! – Razvan

+2

Это должен быть ответ – frostbite

2

Если вы используете mac cmd + shift + l, откроется окно поиска, в котором вы можете искать любую переменную или метод через проект.

+0

Отлично! Примечание: 'ctrl + shift + l' для Windows. – modle13

Смежные вопросы