问题描述
我正在试验NetBeans,真的很喜欢完成某些事情。我来自Eclipse。诸如对源代码项进行排序的功能无法正常工作。 使用:
Product Version: Apache NetBeans IDE 12.1
Java: 1.8.0_131; Java HotSpot(TM) 64-Bit Server VM 25.131-b11
Runtime: Java(TM) SE Runtime Environment 1.8.0_131-b11
System: Linux version 4.8.6-300.fc25.x86_64 running on amd64; UTF-8; en_US (nb)
User directory: /home/bpracht/.netbeans/12.1
Cache directory: /home/bpracht/.cache/netbeans/12.1
在示例类中,我想以常规方式对此进行排序(即,私有字段在顶部排序,公共方法在底部排序。在下面的类上单击“ Alt-Shift-F格式”后,它不会进一步更改顺序:
class Token<T> {
public Token offsetStart(final Long value) {
this.offsetStart = value;
return this;
}
public Token length(final Long value) {
this.length = value;
return this;
}
public Token fullyResolved(final Boolean value) {
this.fullyResolved = value;
return this;
}
public Token parentToken(final Token value) {
this.parentToken = value;
return this;
}
public Token firstChildToken(final Token value) {
this.firstChildToken = value;
return this;
}
public Token lastChildToken(final Token value) {
this.lastChildToken = value;
return this;
}
public Token prevIoUsToken(final Token value) {
this.prevIoUsToken = value;
return this;
}
public Token nextToken(final Token value) {
this.nextToken = value;
return this;
}
public Token lambdaSetValue(final LambdaSetValue<T> value) {
this.lambdaSetValue = value;
return this;
}
private Long offsetStart;
private Long length;
private Boolean fullyResolved;
private Token parentToken;
private Token firstChildToken;
private Token lastChildToken;
private Token prevIoUsToken;
private Token nextToken;
private LambdaSetValue<T> lambdaSetValue;
public Long getLength() {
return length;
}
public long getoffsetStart() {
return offsetStart;
}
public void setoffsetStart(long offsetStart) {
this.offsetStart = offsetStart;
}
public void setLength(Long length) {
this.length = length;
}
}
interface LambdaSetValue<T> {
void setValue(T value);
}
在工具-选项-编辑器->格式中,我有这个: 会员排序顺序: 领域 静态场 静态初始化器 静态方法 静态类 班级 实例初始化器 建设者 方法
(已选中)“按可见性对成员排序”具有: 私人的 受保护的 默认 公开
(已选中)将获取器和设置器放在一起 (选中)按字母顺序对组中的备忘录排序 (未选中)排序使用依赖项 插入点(按类别排序
我希望至少放进去
private Long偏移量从private long长度开始;
预先感谢 夫
解决方法
使用我的设置组织成员的结果:
class Token<T> {
private Long offsetStart;
private Long length;
private Boolean fullyResolved;
private Token parentToken;
private Token firstChildToken;
private Token lastChildToken;
private Token previousToken;
private Token nextToken;
private LambdaSetValue<T> lambdaSetValue;
public Token offsetStart(final Long value) {
this.offsetStart = value;
return this;
}
public Token length(final Long value) {
this.length = value;
return this;
}
public Token fullyResolved(final Boolean value) {
this.fullyResolved = value;
return this;
}
public Token parentToken(final Token value) {
this.parentToken = value;
return this;
}
public Token firstChildToken(final Token value) {
this.firstChildToken = value;
return this;
}
public Token lastChildToken(final Token value) {
this.lastChildToken = value;
return this;
}
public Token previousToken(final Token value) {
this.previousToken = value;
return this;
}
public Token nextToken(final Token value) {
this.nextToken = value;
return this;
}
public Token lambdaSetValue(final LambdaSetValue<T> value) {
this.lambdaSetValue = value;
return this;
}
public Long getLength() {
return length;
}
public long getOffsetStart() {
return offsetStart;
}
public void setOffsetStart(long offsetStart) {
this.offsetStart = offsetStart;
}
public void setLength(Long length) {
this.length = length;
}
}
interface LambdaSetValue<T> {
void setValue(T value);
}
如我的评论中所述,private Long offsetStart
和private Long length
都具有相同的访问级别和相同的类型,没有功能代码上的差异,并且Netbeans不应用字母顺序(英语)。>