我正在处理帐户申请。当我尝试运行发票表单时,发生了称为堆栈溢出异常的事……告诉我该怎么办..一切都很好,我想我应该在Stock类中声明发票对象之前。
这是输出...

run:
Exception in thread "AWT-EventQueue-0" java.lang.StackOverflowError
    at sun.awt.Win32GraphicsConfig.getBounds(Native Method)
    at sun.awt.Win32GraphicsConfig.getBounds(Win32GraphicsConfig.java:215)
    at java.awt.Window.init(Window.java:394)
    at java.awt.Window.<init>(Window.java:433)
    at java.awt.Frame.<init>(Frame.java:403)
    at java.awt.Frame.<init>(Frame.java:368)
    at javax.swing.JFrame.<init>(JFrame.java:158)
    at Invoice.<init>(Invoice.java:10)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)

    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
    at Stock.<init>(Stock.java:670)
    at Invoice.<init>(Invoice.java:1135)
BUILD SUCCESSFUL (total time: 5 seconds)

最佳答案

Invoice构造函数中,您正在创建一个新的Stock对象(在1135行中)。

Stock构造函数中,您正在创建一个新的Invoice对象(第670行)。

Invoice构造函数中,您正在创建一个新的Stock对象(在1135行中)。

依此类推,直到达到最大堆叠深度。您需要确定InvoiceStock哪个应自动创建另一个的新实例,或者创建对象,然后将它们彼此分配。

10-07 13:19
查看更多