I am getting a NullPointerException on the MainClass.ob1.noOfVerts variable in the following code:
import java.awt.*; import javax.swing.*; public class drawr extends JPanel{ public void paintComponent(Graphics g){ super.paintComponent(g); g.setColor(Color.decode("#ffc000")); g.drawLine(0, 0, getWidth(), getHeight()); for(int cnt=0; cnt/displayObject.dim*2<=**MainClass.ob1.noOfVerts**; cnt+=displayObject.dim*2){ g.drawLine(MainClass.ob1.coords[cnt], MainClass.ob1.coords[cnt+1], MainClass.ob1.coords[cnt+2], MainClass.ob1.coords[cnt+3]); } } The object is instantiated here:
import java.awt.Color; import javax.swing.*; public class MainClass{ public static final int windowWidth = 1280; public static final int windowHeight = 640; public static boolean crash = false; public static displayObject **ob1**, ob2, ob3; public static void main(String[] args) throws InterruptedException { String colorString="#ff0000"; int ob1verts[]={10,10,50,50,30,80}; **displayObject ob1=new displayObject("#ff0000", ob1verts);** int ob2verts[]={30,50,70,90,130,180,75,30}; displayObject ob2=new displayObject("#00ff00", ob2verts); int ob3verts[]={10,10,70,50,70,80,110,130,30,30}; displayObject ob3=new displayObject("#0000ff", ob3verts); with this constructor:
public class displayObject { // Each object is defined by a color, number of vertices, and dim (2,3,4) coordinate vertex locations // Use dim to verify that the right number of vertices were sent public static int dim=2; public String color; **public int noOfVerts**; public int coords []; public displayObject (String col, int verts[]){ if (verts.length%dim != 0){ System.out.printf ("Crap in!"); return; } this.coords=new int[verts.length+2]; color=col; **noOfVerts=verts.length/dim;** for (int cnt=0; cnt<verts.length; cnt++){ coords[cnt]=verts[cnt]; } coords[verts.length]=verts[0]; //make last vertex equal first to close the shape coords[verts.length+1]=verts[1]; } } I've created a static variable that I would think would refer to a specific memory space for the object with an appropriate pointer. Why is the object reference a Null Pointer?