Java 子类构造函数未被识别
我试图构造一个子类,但我得到了一个错误,构造函数是未定义的Java 子类构造函数未被识别,java,constructor,subclass,Java,Constructor,Subclass,我试图构造一个子类,但我得到了一个错误,构造函数是未定义的 import java.awt.image.BufferedImage; import java.io.IOException; import javax.imageio.ImageIO; public class LinearAlgebra { public class Matrix { public int m; public int n; public float Matrix[][]; v
import java.awt.image.BufferedImage;
import java.io.IOException;
import javax.imageio.ImageIO;
public class LinearAlgebra
{
public class Matrix
{
public int m;
public int n;
public float Matrix[][];
void Matrix(int tempm, int tempn)
{
m = tempm;
n = tempn;
Matrix = new float[m-1][n-1];
}
}
public static void main(String[] args)
{
LinearAlgebra Geometry = new LinearAlgebra();
LinearAlgebra.Matrix Rotation = Geometry.new Matrix(3,3);
System.out.println("hello");
}
}
抱歉,java已经退出一段时间了。我看了一些java教程,认为我也在做同样的事情,但它不起作用
这是一个方法,而不是构造函数。您必须删除返回类型void
:
Matrix(int tempm, int tempn)
您还应该将局部变量命名为以小写字母开头的
geometry
,而不是geometry
。使用大写字母会使读者感到困惑,因为它使嵌套类Matrix
看起来像是一个静态类,而不是内部类。对于旋转
变量也一样。好的,它可以编译,谢谢。那么构造函数不需要返回类型?还是说不能有一个?@马歇尔克拉夫特它一定没有一个。除此之外,它是一个方法而不是构造函数。是的,还有其他问题,比如我让矩阵[][]浮动,不确定这是否是一种递归方法,所以我将其重命名为元素[][]
Matrix(int tempm, int tempn)