Hi, I'm picking up some Java on the fly, and am making what is probably a simple oversight type of error. Could someone tell me why I'm having trouble accessing arrays of objects in an object from a class's member functions? Here is the beginning of the class, with the constructors. It's a little messy -- there's been some initialization code added for debugging. The constructor seems to work fine, but though it compiles, when I call it in another program (some test code) it just hangs as soon as it tries to read or write values in the arrays. I've been liberal with the 'public' statements; the reason (debugging / desperation!) should be clear, and is not an issue for what I'm doing. This is a U homework thing, but it's not a Java class (it's Algorithms), so no fear about academic integrity in answering. Help is appreciated! Phil Mendelsohn -- www.rephil.org "Trying to do something with your life is like sitting down to eat a moose." --Douglas Wood ----------- public class PriorityQueue{ public qItem [] Q; public int qSize; public int [] where; public class qItem{ public int item; public int key; public qItem(int item, int key){ //consructor this.item = item; this.key = key; } } public PriorityQueue(int maxItem){ //constructor of an empty queue: see below qItem [] Q = new qItem[maxItem]; int [] where = new int[maxItem]; for( int j=0; j < maxItem; j++){ where[j] = -1; Q[j] = new qItem(-2, -3); System.out.println(where[j] + " " + Q[j].item + " " + Q[j].key); } int qSize = 0; }//end constructor void insert(int item, int key){ //insert the item with given key as its priority qSize++; System.out.println("qSize: " + qSize); System.out.println("Item: " + item); System.out.println("Key: " + key); for(int i = 0; i < qSize; i++){ System.out.println(Q[i].item); System.out.println(Q[i].key); } }