I know what you're going through. I had the same growing pains when i was learning
java.
Now, i'm not actually compiling/running/testing anything, but i be the problem is something like this.
As you probably know, when you declare a variable, you are creating a reference to an object. the actual object lives off in the RAM somewhere, and your variable name tells you how to get to it.
you have delcared an array. so, you have a handle to an array that can hold 5 things, in your case, a myLine object. here comes the catch. you don't have the 5 objects. so when you say
l[i].setX1(x1);
you saying "use my l reference, go to the first slot. then use the reference there to call the setX1() method". but there is nothing IN that slot!!!
you need to create the myLine() objects in the array. so a loop over the size of the array, putting in dummy values, or instead of making your four separate calls to set[XY][12], why not just call the constructor you wrote?
Let me know if this doesn't make sense. I usually type about 10 times faster than i think, and ALWAYS hit the "add reply" button before i double check everything...