It is well known that Field Programmable Gate Arrays (FPGAs) can be used to accelerate calculations that take too much time on a Central Processing Unit (CPU). Methodologies have been proposed to reconfigure the FPGA at run time, depending on the needs of the system. The CPU and FPGA generally communicate through message passing, letting the programmer decide exactly which data needs to be passed to the FPGA. As opposed to message passing, we propose a transparent interface between the FPGA and the CPU, which runs a Java Virtual Machine (JVM). Our interface allows regular Java method calls to be intercepted and executed by the FPGA. Conversely, the FPGA will be able to call software methods on the CPU. This portable and transparent interface promotes objectoriented software design for hardware supported applications. Moreover, it allows easy hardware acceleration of existing Java applications.