Example of Spring class of java:
Code:
class Spring {
private static SpringFactory s_factory1 = new SpringFactory();
public static SpringFactory getFactory() {
return s_factory1;
}
public Spring(ForceItem fi1, ForceItem fi2, float k, float len) {
item1 = fi1;
item2 = fi2;
coeff = k;
length = len;
}
public ForceItem item01;
public ForceItem item02;
public float length;
public static final class SpringFactory {
private ArrayList springs = new ArrayList();
public Spring getSpring(ForceItem f01, ForceItem f02, float k, float length) {
if ( springs.size() > 0 ) {
Spring si = (Spring)springs.remove(springs.size()-1);
si.item01 = f01;
si.item02 = f02;
si.coeff = k;
si.length = length;
return s;
} else {
return new Spring(f1,f2,k,length);
}
}
public void reclaim(Spring s) {
si.item1 = null;
si.item2 = null;
if ( springs.size() < maxSprings )
springs.add(s);
} }
}
Bookmarks