我真的不明白爲什麼我會在這一個上得到一個nullpointerexception。一直在努力與這個代碼現在幾個小時,真的不知道它..任何人都可以發現爲什麼我有一個nullpointerexception?
希望你看到任何東西,讓我知道如果你需要更多的代碼。
public void createForest() {
String name = textField_name.getText();
String location = textField_location.getText();
String squaretemp = textField_squaremetre.getText();
String treesorts = textField_treesorts.getText();
String pricetemp = textField_price.getText();
// Convert
double squaremetre = Double.parseDouble(squaretemp);
double price = Double.parseDouble(pricetemp);
forestOwnerCtr.createForest(name, location, squaremetre, treesorts, price);
forestOwnerCtr.printForestList();
}
我在控制檯的錯誤是:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at GUI.CreateForest.createForest(CreateForest.java:131)
at GUI.CreateForest$2.actionPerformed(CreateForest.java:104)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2028)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2351)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6414)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3275)
at java.awt.Component.processEvent(Component.java:6179)
at java.awt.Container.processEvent(Container.java:2084)
at java.awt.Component.dispatchEventImpl(Component.java:4776)
at java.awt.Container.dispatchEventImpl(Container.java:2142)
at java.awt.Component.dispatchEvent(Component.java:4604)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4618)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4279)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4209)
at java.awt.Container.dispatchEventImpl(Container.java:2128)
at java.awt.Window.dispatchEventImpl(Window.java:2492)
at java.awt.Component.dispatchEvent(Component.java:4604)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:717)
at java.awt.EventQueue.access$400(EventQueue.java:82)
at java.awt.EventQueue$2.run(EventQueue.java:676)
at java.awt.EventQueue$2.run(EventQueue.java:674)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:86)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:690)
at java.awt.EventQueue$3.run(EventQueue.java:688)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:86)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:687)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
如果我的System.out.println所有變量非他們是空的。你認爲這個問題在ForestOwnerCtr裏面?要麼?
使斷點後,並在這一個結束:
forestOwnerCtr.createForest(name, location, squaremetre, treesorts, price);
我的控制器看起來像這樣
public void createForest(String name, String location, double squaremetre, String treesorts, double price) {
forestCon.createForest(name, location, squaremetre, treesorts, price);
}
這向我們發送至容器,看起來像這樣:
public void createForest(String forName, String forLocation, double forSquareMetre, String forNatureOfTrees, double forPrice)
{
Forest forestnew = new Forest(forName, forLocation, forSquareMetre, forNatureOfTrees, forPrice);
forests.add(forestnew);
}
幾乎所有的東西都可能會拋出一個。它發生在哪條線上? – Obicere
我們可以得到堆棧跟蹤嗎? – Pankaj
@Obicere看起來我們必須預測堆棧跟蹤:P –