Java 通过类自己的主方法调用类的构造函数并初始化变量
我是Java新手,刚开始做朋友发给我的一些练习。该练习要求我们为多项式的项创建一个类项,另一个类项为多项式本身,其中多项式表示为固定大小的数组,并提供其字段的值。我编写了以下代码:Java 通过类自己的主方法调用类的构造函数并初始化变量,java,exception,exception-handling,nullpointerexception,Java,Exception,Exception Handling,Nullpointerexception,我是Java新手,刚开始做朋友发给我的一些练习。该练习要求我们为多项式的项创建一个类项,另一个类项为多项式本身,其中多项式表示为固定大小的数组,并提供其字段的值。我编写了以下代码: class Term { int coeff; int exponent; } public class Polynomial { static int size=5; Term[] poly; public Polynomial() { po
class Term
{
int coeff;
int exponent;
}
public class Polynomial {
static int size=5;
Term[] poly;
public Polynomial()
{
poly = new Term[size];
for(int i=0;i<size;i++)
{
poly[i].coeff=0;
poly[i].exponent=0;
}
}
public static void main(String args[]) throws Exception
{
Polynomial p = new Polynomial();
}
}
类术语
{
内因系数;
整数指数;
}
公共类多项式{
静态整数大小=5;
术语[]聚;
公共多项式()
{
poly=新术语[尺寸];
对于(int i=0;i对象数组的数组元素,默认情况下为null
。在尝试访问它们的字段之前,请确保它们已初始化
for (int i = 0; i < size; i++) {
poly[i] = new Term();
...
}
for(int i=0;i
您创建了Term
s的数组,但它已初始化为allnull
s。您需要创建Term
s
for(int i=0;i<size;i++)
{
poly[i] = new Term();
poly[i].coeff=0;
poly[i].exponent=0;
}
for(int i=0;i创建数组!=创建数组的内容作为旁白,我将使用poly.length
而不是size变量将循环绑定到数组的大小。
for(int i=0;i<size;i++)
{
poly[i] = new Term();
poly[i].coeff=0;
poly[i].exponent=0;
}