Any time you use system calls specific to one operating system and do not create alternative calls for another operating system, your program will not function correctly. Solaris systems and Intel systems order the bits of an integer differently. (You may have heard of little endian vs. big endian) If your code uses bit shifting, or other binary operators, they will not work on systems that have opposide endianism.
Hi... Java slogan is "WRITE ONECE RUN ANYWARE". But we are not acheving this slogan 100%. Why because java supports Applets,Applets doesnot give consistency performance in all the OS's ,that is the main reason. And Applets are dependent with OS.