Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-4347611

java.lang.NULLPointerException when using static nested class

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P3 P3
    • 1.4.0
    • 1.3.0
    • tools
    • merlin
    • x86
    • windows_98, windows_nt, windows_2000
    • Verified



      Name: skT45625 Date: 06/22/2000


      "java version 1.3.0"
      Java <TM> 2 Runtime Environment, Standard Edition <build 1.3.0-C>
      Java Hotpot<TM> Client VM <build 1.3.0-C, mixed mode>

      1. Steps :
         javac ParentClass.java (ok)
         javac ClientClass.java (failed)

      2. SOURCE CODE
      "ParentClass.java"
      import java.io.*;
      import java.lang.*;

      public class ParentClass {

      //instances and variables
      static final String demo = "FK";

      int bank_id;
      String bank_acct;


      // main class constructor
      ParentClass(){}
      ParentClass(int bank_id, String bank_acct) {
      this.bank_id = bank_id;
      this.bank_acct = bank_acct;
      }

      // static nested class
      static class NestedClass {
                     
      static int bank_id;
      static String bank_acct;

      static void add(){
      ParentClass pcc = new ParentClass(4455, "cool");
      bank_id = pcc.bank_id;
      bank_acct = pcc.bank_acct;

      System.out.println(bank_id);
      System.out.println(bank_acct);
                  }
      }

      // the main class method
      static void main(String args[]) {
      NestedClass.add();
      System.out.println("OK");
      }
      }


      "ClientClass.java"
      import java.io.*;
      import java.lang.*;

      public class ClientClass {

      public ClientClass(){
      new ParentClass().NestedClass.add();
      }

      // the main class method
      static void main(String args[]) {
      new ClientClass();
      System.out.println("OK");
      }
      }


      3. Error Messages

      java.lang.NULLPointerException
          at com.sun.tools.javac.v8.comp.TransInner.access(TransInner.java 722)
          at com.sun.tools.javac.v8.comp.TransInner._case(TransInner.java 1558)
          at com.sun.tools.javac.v8.tree.Tree$Select.visit(Tree.java 963)
          ......
      (Review ID: 106397)
      ======================================================================

      Name: tb29552 Date: 10/25/2000


      java version "1.3.0"
      Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0-C)
      Java HotSpot(TM) Client VM (build 1.3.0-C, mixed mode)

      This is the code

      public class Outer{
      public static class Inner{
      public static int a = 1;
      }
        public static void main(String[] args)
        {
        System.out.println(new Outer().Inner.a);
        }
      }

      This is the dump from the compiler

      An exception has occurred in the compiler (1.3.0). Please file a bug at the
      Java Developer Connection (http://java.sun.com/cgi-bin/bugreport.cgi). Include
      your program and the following diagnostic in your report. Thank you.
      java.lang.NullPointerException
      at com.sun.tools.javac.v8.comp.TransInner.access(TransInner.java:722)
      at com.sun.tools.javac.v8.comp.TransInner._case(TransInner.java:1558)
      at com.sun.tools.javac.v8.tree.Tree$Select.visit(Tree.java:963)
      at com.sun.tools.javac.v8.tree.TreeTranslator.translate
      (TreeTranslator.java:35)
      at com.sun.tools.javac.v8.comp.TransInner._case(TransInner.java:1552)
      at com.sun.tools.javac.v8.tree.Tree$Select.visit(Tree.java:963)
      at com.sun.tools.javac.v8.tree.TreeTranslator.translate
      (TreeTranslator.java:35)
      at com.sun.tools.javac.v8.tree.TreeTranslator.translate
      (TreeTranslator.java:47)
      at com.sun.tools.javac.v8.comp.TransInner._case(TransInner.java:1461)
      at com.sun.tools.javac.v8.tree.Tree$Apply.visit(Tree.java:785)
      at com.sun.tools.javac.v8.tree.TreeTranslator.translate
      (TreeTranslator.java:35)
      at com.sun.tools.javac.v8.tree.TreeTranslator._case
      (TreeTranslator.java:179)
      at com.sun.tools.javac.v8.tree.Tree$Exec.visit(Tree.java:699)
      at com.sun.tools.javac.v8.tree.TreeTranslator.translate
      (TreeTranslator.java:35)
      at com.sun.tools.javac.v8.tree.TreeTranslator.translate
      (TreeTranslator.java:47)
      at com.sun.tools.javac.v8.tree.TreeTranslator._case
      (TreeTranslator.java:111)
      at com.sun.tools.javac.v8.tree.Tree$Block.visit(Tree.java:492)
      at com.sun.tools.javac.v8.tree.TreeTranslator.translate
      (TreeTranslator.java:35)
      at com.sun.tools.javac.v8.tree.TreeTranslator._case
      (TreeTranslator.java:100)
      at com.sun.tools.javac.v8.comp.TransInner._case(TransInner.java:1418)
      at com.sun.tools.javac.v8.tree.Tree$MethodDef.visit(Tree.java:441)
      at com.sun.tools.javac.v8.tree.TreeTranslator.translate
      (TreeTranslator.java:35)
      at com.sun.tools.javac.v8.comp.TransInner._case(TransInner.java:1355)
      at com.sun.tools.javac.v8.tree.Tree$ClassDef.visit(Tree.java:402)
      at com.sun.tools.javac.v8.tree.TreeTranslator.translate
      (TreeTranslator.java:35)
      at com.sun.tools.javac.v8.comp.TransInner.translate
      (TransInner.java:1317)
      at com.sun.tools.javac.v8.comp.TransInner.translateTopLevelClass
      (TransInner.java:1583)
      at com.sun.tools.javac.v8.JavaCompiler.compile(JavaCompiler.java:397)
      at com.sun.tools.javac.v8.Main.compile(Main.java:247)
      at com.sun.tools.javac.Main.main(Main.java:16)

        Tool completed with exit code 4
      (Review ID: 111354)
      ======================================================================

            busersunw Btplusnull User (Inactive)
            skondamasunw Suresh Kondamareddy (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: