@Test public void shouldCorrectlyApplyFormula() { assertThat(addition.apply(2, 2)).isEqualTo(4); assertThat(addition.apply(12, 88)).isEqualTo(100); }
@Override public int apply(int lhs, int rhs) { return lhs + rhs; }
Addition implements Operation { @Override public int apply(int lhs, int rhs) { return lhs + rhs; } }
Addition implements Operation { @Override public int apply(int lhs, int rhs) { return lhs + rhs; }  }
Addition implements Operation { @Override public int apply(int lhs, int rhs) { return lhs + rhs; }  @Override int apply(int lhs, int rhs); @Override boolean handles(char op); }
Addition implements Operation { @Override public int apply(int lhs, int rhs) { return lhs + rhs; }  @Override int apply(int lhs, int rhs); @Override boolean handles(char op);  }