Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 调用main方法_Java - Fatal编程技术网

Java 调用main方法

Java 调用main方法,java,Java,我正在文件上使用bufferedwriter,并执行了代码。但我的问题是把它称为主要方法。我该怎么做?这是方法的名称: public void writerof(final String filePath, final int n) throws IOException..... 因此,在主要方法中,我会说: writerof("file.txt", 6) 我在writeof部分上得到一个错误,它说writeof未定义 还有这些是我的捕获和最后一个区块: catch (IOExcep

我正在文件上使用bufferedwriter,并执行了代码。但我的问题是把它称为主要方法。我该怎么做?这是方法的名称:

public void writerof(final String filePath, final int n) throws IOException.....
因此,在主要方法中,我会说:

writerof("file.txt", 6)
我在writeof部分上得到一个错误,它说writeof未定义

还有这些是我的捕获和最后一个区块:

    catch (IOException ioe) {

        ioe.printStackTrace();

    }


    finally {

        if (writer != null) writer.close();
    }

    }

有错误吗

正如您的方法签名所说,它不是静态的,但我们的main是一个静态方法,因此它不能调用它。 因此,要么将其设置为静态,要么在main中创建该类的对象,然后调用它。

将其设置为静态,如:

public static void main(String[] args) {
        try {
            writerof("file.txt", 6);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    public static void writerof(final String filePath, final int n) throws IOException {
        System.out.println("my method here");
    }
或者更好一点:

public static void main(String[] args) {

        MyClass z = new MyClass();
        try {
            z.writerof("file.txt", 6);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    public  void writerof(final String filePath, final int n) throws IOException {
        System.out.println("my method here");
    }

如果我没有弄错,代码中有两个问题:

第一个问题-在静态上下文中调用对象的方法。您需要将此方法设置为静态或创建此类的对象,并调用这些对象的此方法。 第二个问题-您调用抛出异常的方法,而我不确定您是否从主方法中抛出异常,您应该从主方法中抛出异常,或者用try-catch块包围它。
如果writerof不是静态的,那么您需要对象的实例MyObject obj=new MyObject并在obj上调用它。如果不需要,请将该方法定义为静态方法。您需要显示更多代码。它在同一个班吗?此外,您还需要通过实例将其作为实例方法调用,或者使该方法静态化,因为我已经修复了它。一个问题。我将try块和finally/catch块包含在我的其他方法中,而不是主方法中。虽然错误显示在主菜单中包含try块,但我还是这样做了。所以,我应该继续保持捕获,最终用我的其他方法还是摆脱它不起作用?