Click here to Skip to main content
15,921,622 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Hi,
my task is to simulate a radio with the help of OOP.

I have 3 classes: a GUI class for the radio with a label called "lblFreq", a class for the different channels I want to create "Sender.java" and a control class to do the different tasks.

My channels have 2 atributes: "Freq" for the frequency (double) and "Channel" for the name of the channel (String).
Java
public class Sender {
  
  private double Freq;
  private String Channel;
  
  public Sender(double Freq, String Channel) {
    this.Freq = Freq;
    this.Channel = Channel;
  }

  public double getFreq() {
    return Freq;
  }

  public String getChannel() {
    return Channel;
  }

}


my control class should fill it with a name and a frequency:
Java
public class Steuerung {
  
  private RadioGUI dieGUI;
  private Sender dieSender;
  Sender bigFM = new Sender(89.5, "BigFM");


}


and I want to show the frequency in the label in my GUI when I press the button "btnForward":

Java
 private Steuerung dieST;
(....)
 public void btnForward_ActionPerformed(ActionEvent evt) {
    lblFreq.setText(String.valueOf(dieST.bigFM.getFreq()));
    
  }


I'm getting an error as soon as I press this button, the error log is below.

I think it's because I messed something up at
Java
lblFreq.setText(String.valueOf(dieST.bigFM.getFreq()));

I guess.

Thanks for any help.


Error log:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
	at RadioGUI.btnForward_ActionPerformed(RadioGUI.java:249)
	at RadioGUI$2.actionPerformed(RadioGUI.java:77)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
	at java.awt.Component.processMouseEvent(Component.java:6505)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3320)
	at java.awt.Component.processEvent(Component.java:6270)
	at java.awt.Container.processEvent(Container.java:2229)
	at java.awt.Component.dispatchEventImpl(Component.java:4861)
	at java.awt.Container.dispatchEventImpl(Container.java:2287)
	at java.awt.Component.dispatchEvent(Component.java:4687)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
	at java.awt.Container.dispatchEventImpl(Container.java:2273)
	at java.awt.Window.dispatchEventImpl(Window.java:2719)
	at java.awt.Component.dispatchEvent(Component.java:4687)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735)
	at java.awt.EventQueue.access$200(EventQueue.java:103)
	at java.awt.EventQueue$3.run(EventQueue.java:694)
	at java.awt.EventQueue$3.run(EventQueue.java:692)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.awt.EventQueue$4.run(EventQueue.java:708)
	at java.awt.EventQueue$4.run(EventQueue.java:706)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:705)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)


What I have tried:

Tried other codes at the lblFreq.setText... but it mostly ended with the same error or it wont even start.
Posted
Updated 10-Jan-17 10:05am
v2
Comments
[no name] 10-Jan-17 14:49pm    
"NullPointerException", means just that, you are trying to use an object or the properties or method of an object that is null. You need to learn how to use your debugger to find and fix these sort of issues. From your code sample I would have to guess that dieST is null since you do not show it being instantiated anywhere.
Member 12943657 10-Jan-17 15:14pm    
Wow thanks I absolutely forgot about that! Fixed it, thank you!

1 solution

Posted as a solution to remove from unanswered list.

"NullPointerException", means just that, you are trying to use an object or the properties or method of an object that is null. You need to learn how to use your debugger to find and fix these sort of issues. From your code sample I would have to guess that dieST is null since you do not show it being instantiated anywhere.
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900