### Question:
STKElevationImageReader implements ElevationImageReader { @Override public void init(GeographicBoundingBox bounds, double missingDataValue, String crs, String orderId) { myBounds = bounds; myProjection = crs; myOrderId = orderId; } STKElevationImageReader();  STKElevationImageReader(GeographicBoundingBox bounds, String projection, String orderId); @Override GeographicBoundingBox getBoundingBox(); @Override String getCRS(); @Override String getElevationOrderId(); @Override String getImageFormat(); @Override double getMissingDataValue(); @Override void init(GeographicBoundingBox bounds, double missingDataValue, String crs, String orderId); @Override double readElevation(GeographicPosition position, Image image, GeographicBoundingBox bounds, boolean approximate);  }### Answer:
@Test public void testInit() { ServiceLoader<ElevationImageReader> loader = ServiceLoader.load(ElevationImageReader.class); STKElevationImageReader reader = null; for (ElevationImageReader aReader : loader) { if (aReader instanceof STKElevationImageReader) { reader = (STKElevationImageReader)aReader; } } assertNotNull(reader); GeographicBoundingBox box = new GeographicBoundingBox(LatLonAlt.createFromDegrees(0, 0), LatLonAlt.createFromDegrees(10, 10)); reader.init(box, 0, "proj", "IamId"); assertEquals(box, reader.getBoundingBox()); assertEquals(-Short.MIN_VALUE, reader.getMissingDataValue(), 0); assertEquals("proj", reader.getCRS()); assertEquals("IamId", reader.getElevationOrderId()); }