I give an example using JDBC. Let me say we build a Java project using JDBC technology, with MySQL being the back-end.
Suddenly, our client changes its mind and wants to use Oracle as back-end. Because we have used JDBC, it is relatively easy for us to meet the cilent's requirement. We
set up Oracle, replace JDBC driver, modify some parameters in the configuration files. Voila...la, we are done. WE DO NOT NEED MODIFY OUR CODE.
Such a fact is called interoperability. It means you can replace some components using others without a big modification, in particular in your code.