我开始学习Java,但遇到了无法解决的问题。我有一个带有构造函数的名为MyClass的类。我想将该构造函数设置为访问私有字段:
public class MyClass{
private long variable1;
public MyClass(long variable1){
this.variable1=variable1;
}
public long somethingElse(Argument argument){
return somevalue;
}
}
当我删除构造函数时,可以从另一个类中调用somethingElse。但是,当我尝试一些方法时
data = new MyClass();
return data.somethingElse(argument);
我在data = new MyClass()时遇到错误,即实际参数和形式参数的长度不同,并且“需要很长,找不到参数”。我该如何解决?
从这里:
编译器自动为任何没有构造函数的类提供无参数的默认构造函数
当显式添加一个构造函数时,您将覆盖默认的no-arg。因此,要取回它,只需手动添加即可:
public class MyClass{
private long variable1;
// This is what you need to add.
public MyClass() {
}
public MyClass(long variable1){
this.variable1 = variable1;
}
public long somethingElse(Argument argument){
return somevalue;
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句