如果我要在Java中创建一个简单的类,并且只有一个实例变量的整数数组,那么默认构造函数会有什么意义?我不想把它留空。数组默认构造函数
Q
数组默认构造函数
-6
A
回答
7
你可以这样做:
public class IntArrayDemo {
private static final int DEFAULT_SIZE = 10;
private int [] values;
public IntArrayDemo() {
this(DEFAULT_SIZE);
}
public IntArrayDemo(int size) {
if (size < 0) throw new IllegalArgumentException("size cannot be negative");
this.values = new int[size];
}
}
0
你并不需要一个默认的构造函数。你可以使用静态初始化。 http://docs.oracle.com/javase/tutorial/java/javaOO/initial.html
2
如果你想在实例化类时设置包含的数组,你应该使用该数组作为构造函数的参数。否则,一个空的构造函数就没事了(你不需要明确地声明它,每个没有显式构造函数的类默认都是空的)。
public class ArrayWrapper {
private final int[] innerArray;
public ArrayWrapper(int[] values) {
this.innerArray = values;
}
}
2
空构造函数没有错。如果你真的想要填写它,你可以初始化你的列表:
//...
private SIZE = 10;
private int [] list;
public MyClass() {
list = new int [SIZE];
}
相关问题
- 1. 类默认构造函数
- 2. 默认构造函数
- 3. 非默认构造函数
- 4. C++,默认构造函数
- 5. constexpr默认构造函数
- 6. 非默认构造函数
- 7. 从参数化构造函数调用默认构造函数
- 8. 是构造函数生成的默认构造函数吗?
- 9. 从另一个构造函数调用默认构造函数
- 10. 构造函数替换默认构造函数?
- 11. 继承构造函数和默认构造函数
- 12. 默认构造函数与正常构造函数的类C++
- 13. 构造函数和默认构造函数的区别
- 14. C++构造函数调用默认构造函数
- 15. 默认的构造函数的参数
- 16. Python类构造函数默认参数
- 17. 默认和参数化构造函数
- 18. 默认的默认构造函数,为什么不是用户提供的默认构造函数?
- 19. C++默认构造函数和默认参数
- 20. 结构隐式默认构造函数与无参数构造函数
- 21. 默认构造函数递归崩溃
- 22. 默认构造函数匕首
- 23. 默认构造函数调用
- 24. 属性构造函数的默认值?
- 25. NSObject的默认构造函数
- 26. DatabaseManager没有默认构造函数
- 27. 找不到默认的构造函数
- 28. 没有默认构造函数发现
- 29. “RavenReader.Web.Controllers.UserController”没有默认的构造函数
- 30. 默认构造函数C++错误
这取决于你和你的用例。 –
这是一个奇怪的问题。你基本上是说你不喜欢空的构造函数是怎么样的,你想用一些不必要的功能来装饰它? –
不,我只是不想像我最后的任务停靠点。 Yeesh。 – SoloMael