Не могу правильно инициализировать массив в классе

Только учусь, и столкнулся с проблемой пустой длины массива. Мне нужно через конструктор задать строки и столбцы матрицы. Но когда я их задаю через конструктор то массив получается пустой, как только я задам длину массива при инициализации всё работает

public class Matrix {
    public int ROWS, COLUMN;
    double Arr[][] = new double[ROWS][COLUMN];

    Matrix(int ROWS, int COLUMN) {
        this.ROWS = ROWS;
        this.COLUMN = COLUMN;
    }


    public void printArr(double[][] Arr) {
        for(int i = 0; i < Arr.length; i++) {
            for (int j = 0; j < Arr[i].length; j++) {
                System.out.print("Arr[" + i + "][" + j + "]=" + Arr[i][j]);
                System.out.print("\t");
            }
            System.out.println(" ");
        }

    }
    
}
public class Main {

    public static void main(String[] args) {
        Matrix matrix = new Matrix(5,5);

        for(int i = 0; i < matrix.Arr.length; i++) {
            for(int j = 0; j < matrix.Arr[i].length; j++) {
                matrix.Arr[i][j] = 2 + (int)(Math.random() * 30);
            }
        }

        matrix.printArr(matrix.Arr);


    }

}

Если я сделаю вот так, то всё работает

double Arr[][] = new double[5][5];

Ответы (1 шт):

Автор решения: Igor
public class Matrix {
    public int ROWS, COLUMN;
    double Arr[][];

    Matrix(int ROWS, int COLUMN) {
        this.ROWS = ROWS;
        this.COLUMN = COLUMN;
        Arr = new double[ROWS][COLUMN];
    }
→ Ссылка