import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class MainProg
{
static JMenuBar mb;
static JMenu mnMedia,mnQuit;
static JMenuItem miAdvt,miPress,miOther,miClose;
static JMenuItem miAdd,miChange,miDel,miView;
public MainProg()
{
mnMedia = new JMenu("Media");
mnMedia.setMnemonic('M');
mnQuit = new JMenu("Quit");
mnQuit.setMnemonic('Q');

miAdvt = new JMenuItem("Ad Media");

miPress = new JMenuItem("Print Media");
miOther = new JMenuItem("Others");
miClose = new JMenuItem("Close");
menuListener mnl = new menuListener();
miAdvt.addActionListener(mnl);
miPress.addActionListener(mnl);
miOther.addActionListener(mnl);
miClose.addActionListener(mnl);
mnMedia.add(miAdvt);
mnMedia.add(miPress);
mnMedia.add(miOther);
mb.add(mnMedia);


}

public class menuListener implements ActionListener
{
public void actionPerformed (ActionEvent e)
{
String item =e.getActionCommand();
if(item.equals("Close"))
{
System.exit (0);
}
else
{
if(item.equals("Ad Media"))
{
System.out.println("Ad Media Selected ....");
}
}
}
}


public static void main(String args[])
{
System.out.println("Starting MainProg...");
MainProg mp = new MainProg();
JFrame frame = new JFrame("MediaSoft");
frame.setJMenuBar(mb);
frame.setSize(400,400);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}
}
+++++++++++++++++++++++++++++++++
The above source compiles but when executed gives a NullPointerException????