Скрытые особенности Eclipse

Хорошо, это может быть хромым вопросом, но все используют это по-разному. Какое из лучших времени для этой среды IDE.

Том

Ответы

Ответ 1

Не забывайте Ctrl + Shift + L, который отображает список всех комбинаций сочетаний клавиш (на всякий случай, если вы забыли какие-либо из перечисленных здесь).

Ответ 2

Ctrl-2 something

Похоже, что никто не упомянул Ctrl-2 L (назначить новую локальную переменную) и Ctrl-2 F (назначить новое поле), эти изменили, как я пишу код.

Ранее я печатал, скажем (| - местоположение курсора):

Display display = new |

а затем я нажал Ctrl-Space, чтобы завершить вызов конструктора. Теперь я печатаю:

new Display()|

и нажмите Ctrl-2 L, что приводит к:

Display display = new Display()|

Это действительно ускоряет работу. (Ctrl-2 F делает то же самое, но назначает новое поле, а не новую переменную.)

Другим хорошим сочетанием является Ctrl-2 R: переименовать в файл. Это намного быстрее, чем переименовать рефакторинг (Alt-Shift-R) при переименовании таких вещей, как локальные переменные.

На самом деле я пошел на страницу настроек настройки Keys и назначил всевозможные быстрые исправления для Ctrl-2-something. Например, теперь я нажимаю Ctrl-2 J, чтобы разделить/объединить объявление переменной, Ctrl-2 C, чтобы извлечь внутренний класс в верхний уровень, Ctrl-2 T, чтобы добавить объявление броска в функцию и т.д. Есть тонны назначаемых быстрых исправления, перейдите на свои любимые и назначьте их клавишам Ctrl-2.

Шаблоны

Еще один мой любимый мой шаблон "npe", определяемый как:

if (${arg:localVar} == null)
    throw new ${exception:link(NullPointerException,IllegalArgumentException)}("${arg:localVar} is null");

Это позволяет мне быстро добавлять проверки нулевого аргумента в начале каждой функции (особенно те, которые просто сохраняют аргумент в поле или добавляют его в коллекцию, особенно конструкторы), что отлично подходит для раннего обнаружения ошибок.

Смотрите более полезные шаблоны в www.tarantsov.com/eclipse/templates/. Я не буду перечислять их всех здесь, потому что их много, и потому, что я часто добавляю новые.

Завершение

Несколько трюков для завершения кода:

  • поддержка верблюда для верблюда в другом ответе: тип cTM, get currentTimeMillis
  • default constructor: в объявлении класса без конструктора по умолчанию нажмите Ctrl-Space, первым выбором будет создание
  • перегрузка: в объявлении класса начните вводить имя метода, который вы можете перегрузить, Ctrl-Space, выберите один
  • создание getter/setter: введите "get", Ctrl-Space, выберите getter для создания; то же самое с "is" и "set"

Назначить новому полю

Вот как я добавляю поля.

  • Если у вас пока нет конструкторов, добавьте его. (Ctrl-Space в любом месте объявления класса, выберите первое предложение.)

  • Добавить аргумент (| позиция курсора):

    public class MyClass {
        public MyClass(int something|) {
        }
    }
    
  • Нажмите Ctrl-1, выберите "присваивать новое поле". Вы получаете:

    public class MyClass {
        private final Object something;
        public MyClass(Object something) {
            this.something = something;
        }
    }
    
  • Добавьте нулевую проверку указателя (см. шаблон "npe" выше):

    public class MyClass {
        private final Object something;
        public MyClass(Object something) {
            npe|
            this.something = something;
        }
    }
    

    Нажмите Ctrl-Space, получите:

    public class MyClass {
        private final Object something;
        public MyClass(Object something) {
            if (something == null)
                throw new NullPointerException("something is null");
            this.something = something;
        }
    }
    

Отличная экономия времени!

Ответ 3

ctrl-shift-r и его приятель, ctrl-shift-t, чтобы открыть ресурс или тип, соответственно. Ресурсы включают все файлы в ваших открытых проектах (включая файлы, отличные от java), а типы включают типы java либо в ваших проектах, либо в библиотеку, включенную в проекты.

Ответ 4

Crtl + 1 - мой любимый. Быстрые исправления для красных squiggles.

Он также находится в меню "Правка" → "Быстрое исправление".

Ответ 5

Ctrl + Shift + O, чтобы организовать импорт, который будет отформатировать их красиво, удалить ненужный импорт и добавить отсутствующие импорт.

Ответ 6

Ctrl-J запускает инкрементную нахождение.

Нажмите Ctrl-J, затем начните вводить текст. Используйте вверх/вниз, чтобы найти предыдущие/следующие экземпляры того, что вы набрали.

Ctrl-Shift-J выполняет поиск назад.

Ответ 7

Введите "sysso", затем нажмите Ctrl + Space, чтобы развернуть его на System.out.println().

Tres handy.

Ответ 8

CTRL + 3 отображает список всех команд меню.

Ответ 9

  • CTRL-SHIFT-g: находит способы использования метода или поля под курсором, абсолютно необходимые для понимания кода
  • CTRL-F6: перемещайтесь между списком открытых окон редактора, если вы просто наберете его один раз и отпустите, чтобы переключиться обратно в предыдущее окно редактора, делая это подряд - это отличный способ прыгнуть назад и вперед.
  • CTRL-t: класс или метод покажет вам иерархию типов, очень полезную для поиска реализаций метода интерфейса, например

Ответ 10

Нажатие на тип возвращаемого значения в объявлении метода отображает все точки выхода метода.

например:

1: public void foo()
2: {
3:   somecode();
4:    if ( blah ) return;
5:
6:    bar();
7: }

нажав void, выделите return в строке 4 и нажмите } в строке 7.

Обновление: оно работает даже для try {} блоков catch. Если вы помещаете курсор в исключение в блоке catch, а eclipse выделяет вероятные методы, которые могут вызывать это исключение.

Ответ 11

Кодовое завершение поддерживает CamelCase, например, ввод CWAR покажет результат для ClassWithAReallyLongName. Начните использовать эту функцию, и вы больше никогда не наберете еще одно длинное имя класса.

(части, скопированные из другого ответа, потому что я думаю, что ответы с одним подсказкой/подсказкой лучше всего подходят для опроса)

Ответ 12

Стрелка вверх-вверх перемещает текущий выбор вверх по строке, стрелка "Alt-Down" перемещает ее вниз. Я также использую Alt-Shift-Up/Down Arrow все время. Ctrl-K и Ctrl-Shift-K весьма удобны, нахождение следующего/предыдущего появления текущего выделения (или последнего Find, если ничего не выбрано).

Ответ 13

Там есть возможность автоматически разместить открытую фигурную скобку и точку с запятой в "правильной" позиции. Вам нужно включить это: выберите "Окно/предпочтения" и введите "скобка" в поле поиска - должно быть легко доступно (нет затмения на этом компьютере). Эффект:

  • Ввод точки с запятой в любом месте строки поместит ее на этом конце строки (как в слове/открытом офисе: Backspace, если вы хотите, чтобы она была в исходном месте)
  • Набрав открытую фигурную скобку, когда вы находитесь внутри другой пары фигурных скобок, поместите ее в конец этой строки - как в этом примере

( "|" - это курсор):

if(i==0|)

typing "{" теперь приведет к

if(i==0) {|

Ответ 14

Hippie expand/Word Complete, afaik, вдохновленный Emacs: будет автозаполнять любое слово в любом редакторе на основе других слов в этом файле. Автозаполнение внутри строк литералов в Java-коде, в xml файлах, везде.

Alt + /

Ответ 15

Alt-Shift-R означает переименование, а не рефакторинг. Рефакторинг более общий термин (как определено книга).

Тем не менее, это один из моих любимых рефакторингов. Другие включают:

Извлечь локальную переменную особенно полезно, когда я не помню (или не печатал) тип результата метода. Предполагая, что у вас есть метод JdbcTemplate createJdbcTemplate() в вашем классе, напишите некоторый код, например:

void someQuery() {
    createJdbcTemplate()
}

Выберите выражение createJdbcTemplate(), нажмите Alt-Shift-L, введите имя переменной и нажмите клавишу ввода.

void someQuery() {
    JdbcTemplate myTemplate = createJdbcTemplate();
}

Ответ 16

CTRL + D - удалить текущую строку

Ответ 17

Абсолютно, Ctrl + Q, чтобы перейти к последнему месту редактирования. Это очень полезно сразу после того, как его прервали телефон, босс или другие.

Ответ 18

Alt + Shift + Up Стрелка увеличивает выделение. Alt + Shift + Down делает обратное.

Ответ 19

Alt + Up или Alt + Down для перемещения строк

Ответ 20

Ctrl + Shift + M: изменяет статический или статический атрибут ссылки класса на статический импорт.

Перед

import X;

...
X.callSomething();

После

import static X.callSomething;

...
callSomething();

Ответ 21

Никто еще не упомянул о лучшем. Нажмите имя класса или метода и нажмите Ctrl + T.

Вы получаете быструю иерархию типов. Для имени класса вы видите всю иерархию классов. Для имени метода вы получаете иерархию, показывающую суперклассы и подклассы, с реализациями этого метода, отличными от абстрактных упоминаний, или классами, которые не упоминают метод.

Это огромно, когда вы находитесь в объявлении абстрактного метода и быстро хотите увидеть, где он реализован.

Ответ 22

F3 был моим фаворитом, открывает определение для выбранного элемента.

Ctrl + Shift + R имеет интересную функцию, вы можете использовать только верхние буквы верблюда из класса при поиске (например, ввод CWAR покажет результат для ClassWithAReallyLongName).

Alt + Shift + W > Пакет Explorer упрощает жизнь при просмотре больших проектов.

Ответ 23

Неконтактный трюк без клавиатуры заключается в использовании наборов команд в вашем Team- > Synchronize view для организации ваших изменений перед фиксацией.

Задайте набор изменений по умолчанию, и все изменения, внесенные вами в файлы, будут помещены в этот набор, что упростит просмотр изменений, которые вы изменили при работе с определенным дефектом/функцией, а также другие изменения, которые у вас были тестирование и т.д.

Ответ 24

CTRL + SPACE, для чего угодно, где угодно.

Генерировать геттеры и сеттеры.

Создание конструкторов с использованием полей

Метод извлечения...

Refactor- > Переименовать

CTRL + O для быстрого контура. CTRL + O + CTRL + O для наследуемого контура.

F4 для отображения иерархии типов

Иерархия открытых вызовов, чтобы отобразить, откуда вызывается метод.

CTRL + SHIFT + T, чтобы открыть тип Java

CTRL + SHIFT + R, чтобы открыть любой ресурс.

ALT + влево или вправо для перехода вперед или назад через редактирование мест в ваших документах (простая навигация)

Переопределить/внедрить методы, если вы знаете, что собираетесь делать множество методов (в противном случае CTRL + SPACE лучше по одному за раз.

Refactor- > Extract Interface

Рефактор- > Потянуть вверх

Рефактор- > Нажмите вниз

CTRL + SHIFT + O для организации импорта (при вводе имени общего класса, такого как Карта, нажатие CTRL + SPACE, а затем выбор соответствующего класса будет импортировать его непосредственно для вас).

CTRL + SHIFT + F для форматирования (хотя Eclipse, встроенный в форматирование, может быть немного braindead для длинных строк кода)

EDIT: О да, некоторые отладки:

F5: Встаньте (покажите мне подробности!)

F6: Перейдите (я верю вам, к следующей части...)

F7: Выходите (я думал, что я об этом позаботился, но, оказывается, я этого не делаю, вытащите меня отсюда!)

F8: Возобновить (перейти до следующей точки останова)

CTRL + SHIFT + I: проверить выражение. CTRL + SHIFT + я + CTRL + SHIFT + I: создать выражение просмотра в проверенном выражении.

Условные точки останова: щелкните правой кнопкой мыши точку останова, и вы можете установить условие, которое происходит, которое вызывает его нарушение выполнения программы (контекстная справка с помощью Ctrl + Space доступна здесь!)

F11 - Отладка последнего запуска (приложение)

CTRL + F11 - Запустить последний запущенный (приложение)

Ответ 25

Точка останова при исключении

Eclipse позволяет устанавливать точки останова на основе того, где происходит исключение.
Вы получаете доступ к опции с помощью значка "j!" alt text http://help.eclipse.org/stable/topic/org.eclipse.jdt.doc.user/images/org.eclipse.jdt.debug.ui/elcl16/exc_catch.png в окне отладки.

alt text http://blogs.bytecode.com.au/glen/2007/04/06/images/2007/AddExceptionWindow.png

В официальной теме справки " Добавить точку исключения исключений Java" больше.

  • Параметр Uncaught Exception - приостановить выполнение, когда исключение того же типа, что и точка останова, выведено в неперехваченное местоположение.
  • Опция Caught Exception - приостанавливать выполнение, когда исключение того же типа, что и точка останова, попадает в пойманное местоположение.
  • не забывайте Приостановка прерывания исключения в подклассе этого исключения:
    приостанавливать выполнение, когда встречаются подклассы типа исключения.
    Например, , если контрольная точка исключения для RuntimeException настроена на приостановку в подклассах, она также будет запускаться с помощью NullPointerException.

alt text http://help.eclipse.org/stable/topic/org.eclipse.jdt.doc.user/reference/breakpoints/images/ref-breakpoint_suspendsubclass.PNG

Ответ 26

Ctrl + Alt + UP или Ctrl + Alt + DOWN для копирования строк

Ответ 27

Ctrl + Alt + H по методу получения иерархии вызовов для него. Быстрый способ увидеть, откуда он вызывается.

Ответ 28

Alt + Shift + R для рефакторинга и переименования.

Ответ 29

Ctrl + Shift + L покажет вам все доступные в настоящее время сочетания клавиш

Ответ 30

Вот моя коллекция наиболее полезных сочетаний клавиш для Eclipse 3:

Eclipse 3 Favorite Keyboard Shortcuts. 
by -=MaGGuS=-

Navigate:

•   Ctrl + Shift + L – Shows useful keyboard shortcuts in popup window 
•   Ctrl + H – Search.
•   Ctrl + K – Goes to next search match in a single file. Shift + Ctrl + K – goes to previous match.
•   F3 - Goes to ‘declaration’ of something. Same as Ctrl + Click.
•   Ctrl + Shift + G - Use this on a method name or variable. It will search for references in the code (all the code) to that item.
•   Ctrl + O – Shows outline view of the current class or interface.
•   Ctrl + T – Shows class hierarchy of the current class or interface. F4 – shows the same in separate tab.
•   Ctrl + Shift + T - Open Type. Search for any type globally in the workspace.
•   Ctrl + Shift + R – Open Resource. Search for any file inside workspace.
•   Ctrl + J – Incremental search. Similar to the search in firefox. It shows you results as you type. Shift + Ctrl +J - Reverse incremental search.
•   Ctrl + Q – Goes to the last edit location.
•   Ctrl + Left|Right – Go Back/Forward in history.
•   Ctrl + L – Go to line number.
•   Ctrl + E – This will give you a list of all the source code windows that are currently open. You can arrow up or down on the items to go to a tab.
•   Ctrl +PgUp|PgDown – Cycles through editor tabs.
•   Ctrl + Shift + Up|Down - Bounces you up and down through the methods in the source code.
•   Ctrl + F7 – Switches between panes (views).
•   Ctrl + ,|. – Go to the previous/next error. Great in combination with Ctrl + 1.
•   Ctrl + 1 on an error – Brings up suggestions for fixing the error. The suggestions can be clicked.
•   Ctrl + F4 – Close one source window.

Edit:

•   Ctrl + Space – Auto-completion.
•   Ctrl + / – Toggle comment selected lines.
•   Ctrl + Shift + /|\ – Block comment/uncomment selected lines.
•   Ctrl + Shift + F – Quickly ‘formats’ your java code based on your preferences set up under Window –> Preferences.
•   Ctrl + I – Correct indentations.
•   Alt + Up|Down – move the highlighted code up/down one line. If nothing is selected, selects the current line.
•   Ctrl + D – Delete row.
•   Alt + Shift + Up|Down|Left|Right – select increasing semantic units.
•   Ctrl + Shift + O – Organize Imports.
•   Alt + Shift + S – Brings up "Source" menu.
o   Shift + Alt + S, R – Generate getter/setter.
o   Shift + Alt + S, O – Generate constructor using fields.
o   Shift + Alt + S, C – Generate constructor from superclass.
•   Alt + Shift + T – Brings up "Refactor" menu.
•   Alt + Shift + J – Insert javadoc comment.
•   F2 – Display javadoc popup for current item. Shift + F2 – Display javadoc in external browser.

Run/Debug:

•   F11 / Ctrl + F11 – Execute/debug.
•   Ctrl + Shift +B – Toggle breakpoint.
•   When paused: F5 – Step into, F6 – Step over, F7 – Step out, F8 – Resume.
•   Ctrl + F2 – Terminate.

EOF