title: LinkedList insert using head insert
body: <p>Ok the issue I have now is that I am getting an error at 'public class MagazineView extends Applet {' I get that "the blank field Jlist may not have been initialized"</p>
  
  <p>Here is my  GUI applet</p>
  
  <pre><code>public class MagazineView extends Applet {
  Button button, button2;
  final MagazineList Jlist;
  
  
  public void init() {
  JFrame frame = new JFrame();
  frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  //NORTH PANEL
  JPanel northPanel = new JPanel(new BorderLayout());
  JPanel topPanel = new JPanel(new BorderLayout());
  JLabel label = new JLabel("Add Magazine:     ");
  final JTextField text1 = new JTextField();
  JButton button = new JButton("List Magazines");
  
  
  button.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent e) {
              final String name=text1.getText();
              Magazine mag = new Magazine(name);
              Jlist.insert(mag);
          }
  
  });
  
      topPanel.add(label, BorderLayout.LINE_START);
      topPanel.add(text1, BorderLayout.CENTER);
      topPanel.add(button, BorderLayout.LINE_END);
     //CENTER PANEL
       JPanel centerPanel = new JPanel(new BorderLayout());
       JTextArea atext = new JTextArea();
       centerPanel.add(atext, BorderLayout.CENTER);
  
      //BOTTOM PANEL  
      JPanel bottomPanel = new JPanel(new BorderLayout());
      JLabel label2 = new JLabel("Delete All:     ");
      JTextField text2 = new JTextField();
      JButton button2 = new JButton("Delete Magazine");
      bottomPanel.add(label2, BorderLayout.LINE_START);
      bottomPanel.add(text2, BorderLayout.CENTER);
      bottomPanel.add(button2, BorderLayout.LINE_END);
  
      northPanel.add(topPanel, BorderLayout.NORTH);
      northPanel.add(centerPanel, BorderLayout.CENTER);
      northPanel.add(bottomPanel, BorderLayout.SOUTH);
  
      //Frame
      frame.add(northPanel);
      frame.setSize(600, 400);
      frame.setVisible(true);
  
     }
  
  
  }
  </code></pre>
  
  <p>And here is my Methods</p>
  
  <pre><code>      public class MagazineList {
        private MagazineNode list;
  
        public MagazineList(){
             list=null;
        }
        public void insert (Magazine mag){
      MagazineNode node = new MagazineNode(mag);
      node.next = list;
      list = node;
    }
        public void add (Magazine mag){
             MagazineNode node = new MagazineNode (mag);
             MagazineNode current;
  
             if(list==null)
                  list = node;
             else
             {
                  current = list;
                  while(current.next !=null)
                       current = current.next;
                  current.next = node;
              }
      }
  
      public void DeleteNode(Magazine mag)
      {
          if(list == null) throw new RuntimeException("Cannot delete, Empty List");
  
          if( list.magazine.equals(mag) )
          {
              list = list.next;
              return;
          }
  
          MagazineNode cur  = list;
          MagazineNode prev = null;
  
          while(cur != null &amp;&amp; !cur.magazine.equals(mag) )
          {
              prev = cur;
              cur = cur.next;
          }
  
          if(cur == null) throw new RuntimeException("Cannot delete, not in list");
  
          //delete cur node
          prev.next = cur.next;
      }
  
      public String toString(){
          String result ="";
  
          MagazineNode current = list;
  
          while (current !=null){
              result += current.magazine + "\n";
              current = current.next;
          }
  
          return result;
      }
  
      private class MagazineNode {
          public Magazine magazine;
          public MagazineNode next;
  
          public MagazineNode(Magazine mag){
              magazine = mag;
              next = null;
          }
      }   
  }
  </code></pre>