Как я могу сказать (если когда-либо) Eclipse сделать одну строку для getter или setter при использовании автоматического форматирования?
public User getUser() {
return user;
}
в
public User getUser() { return user; }
Как я могу сказать (если когда-либо) Eclipse сделать одну строку для getter или setter при использовании автоматического форматирования?
public User getUser() {
return user;
}
в
public User getUser() { return user; }
Если вам не нравится весь шаблон, который Java заставляет вас писать, вас может заинтересовать Project Lombok в качестве альтернативного решения.
Вместо того, чтобы пытаться отформатировать код, чтобы свести к минимуму визуальное влияние геттеров и сеттеров, Project Lombok позволяет им добавлять компилятор за кулисами, руководствуясь аннотациями в ваших полях класса.
Вместо написания такого класса:
public class GetterSetterExample {
private int age = 10;
private String name;
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
protected void setName(String name) {
this.name = name;
}
}
Вы пишете:
import lombok.AccessLevel;
import lombok.Getter;
import lombok.Setter;
public class GetterSetterExample {
@Getter @Setter private int age = 10;
@Setter(AccessLevel.PROTECTED) private String name;
}
(пример: http://projectlombok.org/features/GetterSetter.html)
Форматирование кода Java в Eclipse не отличает между getters/seters и любыми другими методами в классе. Таким образом, это невозможно сделать с помощью встроенного форматирования eclipse.
Как утверждают другие плакаты, Eclipse в настоящее время не может этого сделать. Однако есть запрос функции https://bugs.eclipse.org/bugs/show_bug.cgi?id=205973, и если он получает достаточное количество оборотов, есть шанс, что кто-то может его реализовать...
Как использовать теги включения/выключения форматирования:
//@formatter:off
@override public final String getName() {return this.name;}
//@formatter:on
Вам нужно будет убедиться, что теги включения/выключения включены (настройки/java/code style/formatter/edit/off off tags). Это может быть значение по умолчанию.
Для одного метода он будет таким же уродливым, как метод с тремя линиями, но если у вас больше четырех или пяти, то он будет выглядеть более аккуратно. Он также позволяет группировать геттеры и сеттеры для свойства вместе, а не все геттеры, а затем все сеттеры.
Это мое решение, во всяком случае.