在类中找不到main(String [])方法

时间:2019-08-14 12:52:24

标签: java

我遇到以下错误:

  

在类中找不到main(String [])方法

import java.util.*;

class Coor {
    int x, y, w;
    Coor(int x, int y, int w) {
        this.x = x;
        this.y = y;
        this.w = w;
    }
}

class Xc {
    int c = 0;
    int d = 10;
    Xc(int c, int d) {
        this.c = c;
        this.d = d;
    }

}

public class TcsDigital {
    int n = 4;
    boolean visited = false;
    boolean[][] varray = new boolean[n][n];
    //int array[][]=new int[n][n];
    int array[][] = {
        {
            1,
            8,
            21,
            7
        },
        {
            19,
            17,
            10,
            20
        },
        {
            2,
            18,
            23,
            22
        },
        {
            14,
            25,
            4,
            13
        }
    };


    public boolean check(int r, int c) {
        if (r >= 0 && r < n && c >= 0 && c < n && varray[r][c] == false)
            return true;
        return false;
    }

    public void fun(int[][] a, int r, int c, int w) {
        if (r == n - 1 && c == n - 1) {
            System.out.println("Reached");
            return;
        }

        varray[r][c] = true;

        if (check(r + 1, c) == true) {

        }
        if (check(r - 1, c) == true) {

        }
        if (check(r, c + 1) == true) {

        }
        if (check(r, c - 1) == true) {

        }
        varray[r][c] = false;
    }
    public static void main(String[] args) {
        TcsDigital t = new TcsDigital();
        t.fun(t.array, 0, 0, t.array[0][0]);
        //Stack <Coor>stack=new Stack<Coor>();
        Stack < Xc > stacks = new Stack < Xc > ();

    }
}

发生错误,无法在类中找到main(String [])方法 用Java版本12.x表示 这样说的原因是什么,但是它在onlinegdb.com,GeekforGeek- IDE等在线编译器中可以很好地编译,但是在Java中不能离线编译,我使用notepad ++编程并直接在命令窗口中运行

  

在类:Coor中找不到main(String [])方法

1 个答案:

答案 0 :(得分:1)

Java在要编译的main文件中寻找classname.java方法。文件名必须与其中找到的类相对应。

我的建议是,您的文件未命名为TcsDigital.java,因此java将采用它找到的第一个Java类,即Coor。由于Coor不包含main方法,因此会发生错误。 您应该尝试将文件重命名为TcsDigital.java

我建议将每个java类写入单独的文件中,然后根据需要导入它们。另外一个仅包含main方法的 Main 类也是一个选项。