Java 实现jframe类的接口

Java 实现jframe类的接口,java,swing,Java,Swing,我们一直在使用适当的向导创建一组JFrame类 创建了一个接口,并决定让JFrame类实现这个接口。通常,当向类添加implements CaptureObserver语句时,类声明用红色下划线,错误是 System.Bill.Operation.BillForm不是抽象的,不重写 抽象方法 onErrorcom.lti.civil.CaptureStream,com.lti.civil.CaptureException中的 com.lti.civil.CaptureObserver 如何解决此

我们一直在使用适当的向导创建一组JFrame类

创建了一个接口,并决定让JFrame类实现这个接口。通常,当向类添加implements CaptureObserver语句时,类声明用红色下划线,错误是

System.Bill.Operation.BillForm不是抽象的,不重写 抽象方法 onErrorcom.lti.civil.CaptureStream,com.lti.civil.CaptureException中的 com.lti.civil.CaptureObserver


如何解决此问题?

该错误的意思是,您的类实现了接口,但它不包含该接口定义的所有方法。解决方案:为类提供缺少的方法。在您的情况下,错误会准确地告诉您缺少哪种CaptureObserver方法,onErrorcom.lti.civil.CaptureStream,com.lti.civil.CaptureException

一些不相关的问题和建议:

我们一直在使用适当的向导创建一组JFrame类

如果您是Swing新手,请避免使用向导创建GUI,而是尝试手动创建。它将使您更好地了解如何使用该库。另外,尽量创建JPanel而不是JFrames,因为这将给您的GUI类带来更大的灵活性。使用JPanel,您可以将其放入JFrame,或者如果需要,放入JDialog、JOptionPane、JApplet、另一个JPanel、CardLayout视图等

创建了一个接口,并决定让JFrame类实现这个接口

通常最好避免让GUI/视图类实现侦听器接口,因为这会让一个类承担太多的不同责任。也许这应该是一个匿名的内部类,或者是一个单独的conctrol类的一部分

通常,在向类添加implements CaptureObserver语句时,类声明用红色下划线,错误是System.Bill.Operation.BillForm不是抽象的,并且不会覆盖抽象方法onErrorcom.lti.civil.CaptureStream,com.lti.civil.CaptureObserver中的com.lti.civil.CaptureException如何解决它。请帮忙


这一点我们已经在上面讨论过。

该错误的意思是,您的类实现了接口,但它不包含该接口定义的所有方法。解决方案:为类提供缺少的方法。在您的情况下,错误会准确地告诉您缺少哪种CaptureObserver方法,onErrorcom.lti.civil.CaptureStream,com.lti.civil.CaptureException

一些不相关的问题和建议:

我们一直在使用适当的向导创建一组JFrame类

如果您是Swing新手,请避免使用向导创建GUI,而是尝试手动创建。它将使您更好地了解如何使用该库。另外,尽量创建JPanel而不是JFrames,因为这将给您的GUI类带来更大的灵活性。使用JPanel,您可以将其放入JFrame,或者如果需要,放入JDialog、JOptionPane、JApplet、另一个JPanel、CardLayout视图等

创建了一个接口,并决定让JFrame类实现这个接口

通常最好避免让GUI/视图类实现侦听器接口,因为这会让一个类承担太多的不同责任。也许这应该是一个匿名的内部类,或者是一个单独的conctrol类的一部分

通常,在向类添加implements CaptureObserver语句时,类声明用红色下划线,错误是System.Bill.Operation.BillForm不是抽象的,并且不会覆盖抽象方法onErrorcom.lti.civil.CaptureStream,com.lti.civil.CaptureObserver中的com.lti.civil.CaptureException如何解决它。请帮忙


这一点我们已经在上面讨论过。

您需要实现接口中定义的方法

如果您有:

public interface CaptureObserver {
    public void onError(CaptureStream stream, CaptureException exc);
}
那么你需要这个:

public class BillForm extends JFrame implements CaptureObserver {
    // Don't forget your constructor
    public BillForm() {
        super();
    }

    @Override
    public void onError(CaptureStream stream, CaptureException exc) {
         // Code
    }
}

您需要实现接口中定义的方法

如果您有:

public interface CaptureObserver {
    public void onError(CaptureStream stream, CaptureException exc);
}
那么你需要这个:

public class BillForm extends JFrame implements CaptureObserver {
    // Don't forget your constructor
    public BillForm() {
        super();
    }

    @Override
    public void onError(CaptureStream stream, CaptureException exc) {
         // Code
    }
}