mercredi 20 mai 2015

brauche hilfe bei Fehlersuche

Hallo ich bin gerade dabei einen Formelrechner zu bauen und bekomme an folgender Stelle immer einen Fehler mit dem ich nix anfangen kann.


Formel für n!

Java Code:

  1. public class Fakultaet {
  2.  
  3.  
  4. double Fergebnis;
  5.  
  6.  
  7. public void fakultaet(int n){
  8. double zERG=1;
  9. for(int i=n;i>0;i--){
  10. zERG*=i;
  11. Fergebnis = zERG;
  12. }
  13. }
  14. public double getErgbenis(){
  15. return Fergebnis;
  16. }
  17.  
  18. }
  19. ]



Die Gui dazu

Java Code:

  1. import java.awt.event.ActionListener;
  2.  
  3. import javax.swing.JButton;
  4. import javax.swing.JFrame;
  5. import javax.swing.JPanel;
  6. import javax.swing.JTextField;
  7. import javax.swing.border.EmptyBorder;
  8.  
  9. public class BernoulliGUI extends JFrame {
  10.  
  11. /**
  12.   *
  13.   */
  14. private static final long serialVersionUID = 1L;
  15. private JPanel panel;
  16. private JTextField nVariable;
  17. private JButton zurückBb;
  18. private JButton Nfack;
  19. private JButton ResetB;
  20. private JTextField fackErgebnis;
  21.  
  22.  
  23. public BernoulliGUI() {
  24.  
  25. super("Bernoulli");
  26.  
  27. Form_bermoulli();
  28. }
  29.  
  30.  
  31. public void Form_bermoulli() {
  32. setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  33. setBounds(100, 100, 450, 300);
  34. panel = new JPanel();
  35. panel.setBorder(new EmptyBorder(5, 5, 5, 5));
  36. setContentPane(panel);
  37. panel.setLayout(null);
  38.  
  39. nVariable = new JTextField();
  40. nVariable.setBounds(27, 12, 114, 19);
  41. panel.add(nVariable);
  42. nVariable.setColumns(10);
  43.  
  44. zurückBb = new JButton("Zurück");
  45. zurückBb.setBounds(319, 224, 117, 25);
  46. panel.add(zurückBb);
  47.  
  48. Nfack = new JButton("n!");
  49. Nfack.setBounds(265, 9, 117, 25);
  50. panel.add(Nfack);
  51.  
  52. ResetB = new JButton("Reset");
  53. ResetB.setBounds(265, 58, 117, 25);
  54. panel.add(ResetB);
  55.  
  56. fackErgebnis = new JTextField();
  57. fackErgebnis.setBounds(27, 169, 114, 19);
  58. panel.add(fackErgebnis);
  59. fackErgebnis.setColumns(10);
  60. }
  61.  
  62.  
  63.  
  64.  
  65.  
  66. public String get_n_Eingabe(){
  67.  
  68. return this.nVariable.getText();
  69.  
  70. }
  71.  
  72. public void setErgebnisBER(String erg){
  73.  
  74. this.fackErgebnis.setText(erg);
  75.  
  76. }
  77.  
  78. public void setBernoulliListener(ActionListener l){
  79. this.Nfack.addActionListener(l);
  80.  
  81. }
  82.  
  83.  
  84. public void setStartGUIListener(ActionListener l){
  85. this.zurückBb.addActionListener(l);
  86. }
  87. }


und der Controller

Java Code:

  1. public class Controller {
  2.  
  3. private PlusGUI Plusgui;
  4. private StartGUI Startgui;
  5. private Addition addition;
  6. private BernoulliGUI bernoulligui;
  7. private Bernoulli bernoulliRechner;
  8.  
  9. public Controller(){
  10.  
  11. this.Plusgui = new PlusGUI();
  12. this.addition = new Addition();
  13. this.Startgui = new StartGUI();
  14. this.bernoulligui = new BernoulliGUI();
  15.  
  16.  
  17.  
  18. addListener();
  19. }
  20.  
  21. public void showGUI(){
  22. this.Plusgui.setVisible(false);
  23. this.Startgui.setVisible(true);
  24. this.bernoulligui.setVisible(false);
  25.  
  26. }
  27.  
  28.  
  29.  
  30. private void addListener(){
  31.  
  32. this.Plusgui.setAdditionListener(new AdditionListener());
  33. this.Plusgui.setResetFormListener(new ResetFormListener());
  34. this.Plusgui.setStartGUIListener(new StartGUIListener());
  35. this.Startgui.setAddGUIListener(new AddGUIListener());
  36. this.Startgui.setBernoulliguiListener(new BernoulliguiListener());
  37. this.bernoulligui.setStartGUIListener(new StartGUIListener());
  38. this.bernoulligui.setBernoulliListener(new BernoulliListener());
  39. }
  40.  
  41. class BernoulliListener implements ActionListener{
  42. public void actionPerformed(ActionEvent e){
  43. int n = Integer.valueOf(bernoulligui.get_n_Eingabe());
  44. System.out.println(n);
  45.  
  46. bernoulliRechner.fakultaet(n);
  47. bernoulligui.setErgebnisBER(String.valueOf(bernoulliRechner.getErgbenis()));
  48. }
  49.  
  50. }
  51.  
  52.  
  53. class AdditionListener implements ActionListener{
  54. public void actionPerformed(ActionEvent e){
  55. long aaWert = Long.valueOf(Plusgui.get_A_Eingabe());
  56. long bbWert = Long.valueOf(Plusgui.get_B_Eingabe());
  57. addition.additionBerechnen(aaWert, bbWert);
  58. Plusgui.setErgebnis(String.valueOf(addition.getAddErg()));
  59. }
  60. }
  61.  
  62.  
  63.  
  64. class ResetFormListener implements ActionListener{
  65. public void actionPerformed(ActionEvent e) {
  66. Plusgui.resetAdditionGUI();
  67. addition.zurückSetzen();
  68. bernoulligui.resetBernoulliGUI();
  69.  
  70. }
  71. }
  72.  
  73. class StartGUIListener implements ActionListener{
  74. public void actionPerformed(ActionEvent e) {
  75.  
  76. Startgui.setVisible(true);
  77. Plusgui.setVisible(false);
  78. bernoulligui.setVisible(false);
  79.  
  80. }
  81. }
  82.  
  83. class AddGUIListener implements ActionListener{
  84. public void actionPerformed(ActionEvent e) {
  85.  
  86. Startgui.setVisible(false);
  87. Plusgui.setVisible(true);
  88. bernoulligui.setVisible(false);
  89.  
  90. }
  91. }
  92. class BernoulliguiListener implements ActionListener{
  93. public void actionPerformed(ActionEvent e) {
  94.  
  95. Startgui.setVisible(false);
  96. Plusgui.setVisible(false);
  97. bernoulligui.setVisible(true);
  98. }
  99. }
  100. }]



Der Fehler liegt bei
Java Code:

  1. at controller.Controller$BernoulliListener.actionPerformed(Controller.java:46)


Ich weis echt nicht was da das Problem sein soll :(


brauche hilfe bei Fehlersuche

0 commentaires:

Enregistrer un commentaire