在高層次上,Java語言系統看起來與.NET Framework類似。在這兩種情況中,源代碼都是被翻譯成一種中間語言。但是,在.NET平臺中,這種中間語言是MSIL,而在Java系統中,是Java Byte Code。在這兩種情況中,中間語言被帶入到運行環境中。在Framework中,運行環境是Common Language Runtime。對于Java,運行環境是Java虛擬機(Java Virtual Machine)。總體而言,Common Language Runtime和Java虛擬機有類似的功能,并且在技術進步方面,都無可置疑地在發展和彼此交互躍進。