Very simple Example:
Version 1 of class could have getter like this.
public int getTotal() { return total_;}
Version 2 could do this
public int getTotal() { return a + b;}
We've changed how the class is implemented, but clients of the class don't need to change as well, because the data is hidden behind a getter.