当我将参数(或它是参数?)存储到类的私有实例变量时,是否有更快的方法来编写this.x = x
(其中x是构造函数的参数,{{ 1}}是实例变量)?有时使用较长的变量名称,我发现它有点重复,是否有类似this.x
等的东西?
我是Java的新手,所以如果我能说得更清楚,请告诉我。
答案 0 :(得分:4)
不,不是真的。我不确定你的意思是x++
- 这是后缀增量运算符 - 但是分配变量的唯一方法就是分配它们。
例如:
public class Student {
private String name;
private int age;
private double gradePointAverage;
public Student(String name, int age, double gradePointAverage) {
this.name = name;
this.age = age;
this.gradePointAverage = gradePointAverage;
}
}
大多数IDE都有自动生成构造函数的快捷方式。例如,IntelliJ允许您键入alt + insert,它将显示一个上下文菜单,允许您自动生成构造函数,getter和setter。
答案 1 :(得分:0)
没有。您可以使用IDE来帮助您。试试Eclipse或IntelliJ IDEA。
使用IDE,您可以Eclipse: Create Getters and Setters或IntelliJ: Generating Getters and Setters
答案 2 :(得分:0)
没有办法以更简单的方式做到这一点。如果你想避免这样做,你可以在字段名称或参数变量名称之后加上'1'或'2'。
答案 3 :(得分:0)
一般来说不,没有句法速记。但是有一些方法可以避免这样做。特别是,我是some sources的忠实粉丝,这个项目允许你用最小的样板定义other sources,例如:
@AutoValue
abstract static class Animal {
static Animal create(String name, int numberOfLegs) {
return new AutoValue_Animal(name, numberOfLegs);
}
abstract String name();
abstract int numberOfLegs();
}
由于auto/value
利用auto/value
,对于不使用Maven或Ant的小程序来说,它不是一个好的解决方案,但对于小型项目,你可能不介意温和{{1}冗余。