Java里面定义数组的时候并没有给数组元素分配内存,只是给数组整体分了内存,所以里面的每个对象都需要new.例如:
A[] a=new A[2];
for(int i=0;i<2;i++)
a[i] = new A();
这样才能a[i].someMethod()
所以你的tail[0] tail[1]还需要new.
A[] a=new A[2];
for(int i=0;i<2;i++)
a[i] = new A();
这样才能a[i].someMethod()
所以你的tail[0] tail[1]还需要new.
tail[0] = new Rectangle2D.Double();
tail[0].setRect(0, 0, 10, 10);
tail[1] = new Rectangle2D.Double();
tail[1].setRect(10, 10, 10, 10);