Interoperability is the first 'HARD' term I heard when I started my Java Course some 2 years back. It simple means how Java is showing it's behavior when it come across some non-Java component. We can say something like cross language, cross platform.
Dealing with other language is really a tough job, especially for Java because if its platform independency. In all of the problem we have a good news, Sun has proposed a new JSR(Java Specification Request) to make changes to the JCP. This JSP, JSR 306 also proposes more fundamental changes to the process, including allowing non-Java implementations of a JSR's specification; the ability to create liaison relationships with other standards organizations; easing the migration of pre-existing technology toward an agreed-upon standard; and the availability of a TCK (Technology Compatibility Kit) and associated licensing information upon completion of a JSR.
"This makes sense if you look at the emergence of concepts like Web services and service-oriented architecture," Kluyt(Chair of JCP) said. "Enterprises face very mixed environments where they have to make different architectures work together."