Заполнение Intellij Code для всех методов setter/getter локального объекта переменной

Вопрос: Я попытался найти это, но, честно говоря, условия поиска действительно ускользают от меня. Небольшой фрагмент кода, за которым следует вопрос. Public class Person { String firstName; String lastName; public void setFirstName(String firstName) { this.firstName = firstName; } public String getFirstName() { return firstName; } ... } В другом объекте, который использует этот объект person,

Вопрос:

Я попытался найти это, но, честно говоря, условия поиска действительно ускользают от меня. Небольшой фрагмент кода, за которым следует вопрос.

Public class Person { String firstName; String lastName; public void setFirstName(String firstName) { this.firstName = firstName; } public String getFirstName() { return firstName; } … }

В другом объекте, который использует этот объект person, я хотел бы иметь возможность расширять все методы seters в Intellij.

public class PersonAssembler { public static Person assemblePerson(SomeOtherObject someOtherObject) { Person person = new Person; //intellj would provide this below. person.setFirstName(); person.setLastName(); //end of what intellj provides. return person; }

Возможно ли это? Я просмотрел короткие сокращения клавиатуры и т.д. Я использовал intellij какое-то время, так что просто подумал, есть ли у кого-нибудь представление об этом.

Я надеялся на режим редактирования столбцов, затем завершение кода и, возможно, shift + стрелку вниз, чтобы выбрать несколько завершений, но не повезло. Что неудивительно. Мне не хотелось бы писать это в графическом интерфейсе.

Редактировать: Я добавил некоторые разъяснения и честно забыл об этом вопросе. Ответы не имеют никакого отношения к актуальному вопросу, если вы внимательно прочитаете. Я не говорю о контекстном меню Generate.

Лучший ответ:

Это старый вопрос, но, возможно, это помогает кому-то.

Кроме того, это не действие “с одним щелчком”, но…

Шаги:

  • Перейти к файлу класса
  • Открытый вид структуры (левая панель)
  • Выберите все сеттеры (при необходимости отсортируйте по алфавиту) и скопируйте
  • Вернитесь к целевому классу/методу
  • Вставить скопировать
  • Изменить (в режиме столбца), чтобы включить person. в начале каждого класса и () в конце.

Ответ №1

В своем проекте щелкните правой кнопкой мыши в любом месте экрана ввода и нажмите “Создать…”, а затем “Getter and Setter”. Затем удерживайте Ctrl и щелкните по полям, для которых вы хотите создать геттеры и сеттеры, затем нажмите “ОК”.

Ответ №2

Ярлык для создания метода установки – Alt+Insert в Intellij.

Ответ №3

Я не уверен, как это сделать в IntelliJ, но я свяжу вас с каркасом, который делает такие вещи более плавными в Java: Project Lombok

например, возьмите свой код, он будет выглядеть так:

public class Person { @Setter @Getter String firstName; String lastName; }

есть плагин для intellij, который исправляет его, поэтому вы также не получаете никаких раздражающих предупреждений.

http://projectlombok.org/

Ответ №4

когда ваш курсор находится внутри вашего вновь созданного класса, тогда вы можете нажать ALT + Insert – появится диалоговое окно, и вы можете выбрать “Getter and Setter”

Ответ №5

вот мой плагин genSets

Foo foo = new Foo();

код вроде этого

foo.allSet

будет генерировать

foo.setName(); foo.setAge(); foo.setBar(); foo.setTest(); foo.setLike(); Ответ №6

Этот плагин может помочь GenerateAllSetter

Нажмите CTRL + ENTER где вы хотите использовать, и он будет генерировать вызовы setter для вас.

Ответ №7

Продолжение Michael Jarvis:

Итак, я в IntelliJ IDEA 2018.1.4 (Community Edition), и я понял, что важно сначала выбрать все поля для того, чтобы right-click или ALT + Insert чтобы иметь свойство меню (getter и setter)

Оцените статью
Добавить комментарий