It means that the
Java heap can grow to that size, at maximum, for that application. It will generally start smaller, and will grow as needed up to that size, but no larger. The maximum amount used by your application will actually be larger, because the Java heap size doesn't count the space taken up by the VM implementation, etc.
In any case, do you understand the idea of "virtual memory"? All modern operating systems effectively use your disk space as extra RAM, so that the total amount of memory needed by all running programs can actually be larger than the amount of physical memory you have. How well the computer handles that situation depends on the OS and on the hardware, of course.