### Question:
ApproximateAngle implements PioSerializable { @Override public boolean equals(Object obj) { if (obj instanceof ApproximateAngle) { ApproximateAngle a = (ApproximateAngle) obj; return angle == a.angle && variance == a.variance; } return false; } ApproximateAngle(int angle, int variance);  ApproximateAngle(ParamSet paramSet); ParamSet getParamSet(PioFactory factory, String name); int getAngle(); int getVariance(); boolean contains(int angle); @Override String toString(); @Override int hashCode(); @Override boolean equals(Object obj);  }### Answer:
@Test public void testEquals() { final int angle = 350; final int range = 50; ApproximateAngle a = new ApproximateAngle(angle, range); ApproximateAngle b = new ApproximateAngle(angle + 360, range); assertEquals(a, b); ApproximateAngle c = new ApproximateAngle(angle + 1, range); assertFalse(a.equals(c)); }