如何从同一个类中的main()调用方法?

时间:2015-02-17 14:22:12

标签: java java-ee main

我有以下情况。

我有一个 Main 类,我在其中声明了标准 public static void main(String [] args)方法

main()方法的主体中,我试图将以下 printPdf()称为类:< / p>

private void printPdf() {

    /** The resulting PDF file: */
    String result = "D:/SOFTLAB/massive_pdf_print.pdf";

    // STEP 1 Creazione del documento in formato A4 e senza margini:
    com.itextpdf.text.Document document = new com.itextpdf.text.Document(com.itextpdf.text.PageSize.A4, 0, 0, 0, 0);

    try {
        /* STEP 2 Constructs a PdfWriter.
                  document: The PdfDocument that has to be written.
                  os: The OutputStream the writer has to write to
         */
        PdfWriter.getInstance(document, new FileOutputStream(result));

        // STEP 3:
        document.open();

        // STEP 4:
        document.add(new Paragraph("Hello World!"));

        // STEP 5:
        document.close();

    }catch (DocumentException ex){
        ex.printStackTrace();
    }
    catch (IOException ex){
        ex.printStackTrace();
    }

}

要打电话给我:

this.printPdf();

但是我收到以下错误消息:&#39; mainPkg.Main.this&#39;不能从静态上下文中引用

所以我认为这是因为 main()方法是一个静态方法,但我怎样才能正确调用我的 printPdf()方法(在相同的主要类包含 main())?

TNX

1 个答案:

答案 0 :(得分:4)

将方法printPdf()声明为static,或者实例化Main类的新对象,然后从中调用它。