我如何从B类执行A类的run方法

时间:2012-11-12 22:47:40

标签: java class swt

public class AplotPdfPrintLocal extends ApplicationWindow {
private String userSelectedFile;

public AplotPdfPrintLocal(String pdfFilePath) {
   super(null);
   this.userSelectedFile = pdfFilePath;
}

public void run() {
   setBlockOnOpen(true);
   open();
   Display.getCurrent().dispose();
}

etc........

我想从B类执行上述类

方法是B级 - 在

之下
public void startPDFPrint() throws Exception {
      AplotPdfPrintLocal pdfPrint = new AplotPdfPrintLocal(getPDFFileName()).run();
}

我收到一个错误,我需要将运行的返回类型从void更改为plotPdfPrintLocal

我打算把班级称错了吗?

1 个答案:

答案 0 :(得分:4)

将其更改为:

public void startPDFPrint() throws Exception {
      AplotPdfPrintLocal pdfPrint = new AplotPdfPrintLocal(getPDFFileName());
      pdfPrint.run();
}

public void startPDFPrint() throws Exception {
      new AplotPdfPrintLocal(getPDFFileName()).run();
}

编译器说的是你试图将run方法的结果( void )分配给表达式的左边成员, AplotPdfPrintLocal pdfPrint 变量

因此,由于运行正在“返回”无效,因此存在错误,预期的 AplotPdfPrintLocal 类型之间存在差异(在左侧声明)和实际的返回类型: void