In this paper, we have presented a low-cost Java class caching mechanism for Java processors. The design is integrated into a heterogeneous dual-core Java SoC that is targeted for embedded multimedia applications with GUI support. The design goal of the proposed caching mechanism is to improve the Java program execution performance without the complexity of a multi-way set associative cache. Since object-oriented Java programs are usually composed of many small classes, the proposed low-cost caching mechanism works fairly well for practical applications. The Java SoC is implemented and emulated on an Xilinx Virtex-4 device and the benchmark results show that the performance of the proposed dual-core Java SoC is faster than other popular software-based VMs for embedded systems.