This week's book giveaway is in the Servlets forum.
We're giving away four copies of Murach's Java Servlets and JSP and have Joel Murach on-line!
See this thread for details.
The moose likes Beginning Java and the fly likes core java query Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of Murach's Java Servlets and JSP this week in the Servlets forum!
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "core java query " Watch "core java query " New topic

core java query

hansika motwani
Ranch Hand

Joined: Jul 22, 2008
Posts: 44
hi every one .
iam nodding my head for one basic question which is about platform independency in java..I have 6 queries
1)let us assume i have compiled a java program on windows os (obiviously windows compatible jvm) .the moment i got my class file if i run that under linux os (linux compatible jvm). will i get same output (without any modificaitons)as i got in windows os..if yes will that happen for every topic in java as swings ,applets, awt and even graphics representation works.
2)when i used windows jvm and compiled the program how can a linux jvm can understand windows jvm compiled code and run that on linux jvm ?
3)i have devoloped a java decompiler under windows os and when i give class file as input iam getting same source code which has produced that class file .will i get the same source code if i took that windows compiled class file and run that under linux (os under linux jvm)?
4)if yes when compiling i have used windows jvm then how can i get same source code if i decompile it under linux can a linux jvm can produce same source code being compiled under windows jvm ..then how one can say jvm is platform dependent..and jit compiler is also platform dependent ..
5)wora (write once run any where ) if i run class file under any os will i get same to same (100% same output ) as i got during windows os
6)till the process of class file creation will the jvm would be dependent on operating system.if yes then even when decompilation or while running the program how is it producing the same output ?
please please please help me and answers my queries with patience (please sir) please. please dont send me any link or url answer them please
thanks and regards to java ranch team
Ronald Schild
Ranch Hand

Joined: Jun 09, 2008
Posts: 117
This really sounds like homework.

Please take your time to study a bit and if you have remaining questions, ask them.

Java hobbyist.
Joanne Neal

Joined: Aug 05, 2005
Posts: 3418
You don't use a JVM to compile java source code. You use it to run Java byte code produced by a Java compiler.

The JVM is different on each platform. A Windows JVM will not run on a Linux box. The JIT compiler is part of the JVM and is therefore platform dependent.
The byte code produced by the Java compiler will run on any JVM on any OS*.
In other words, the JVM is platform dependent, the java byte code is platform independent.*

I think that covers all the points you raised. Feel free to ask more questions in you're still uncertain if anything.

* It is possible to put some platform dependent code in Java source (e.g. running an OS command using ProcessBuilder), but in general byte code is platform independent.

Joanne Neal

Joined: Aug 05, 2005
Posts: 3418
Originally posted by hansika motwani:
3)i have devoloped a java decompiler under windows os and when i give class file as input iam getting same source code which has produced that class file

I recommend you market this immediately. Apart from with the very simplest of code, I never found a Java decompiler that decompiles a class file to exactly the same source code as it was created with.
I agree. Here's the link:
subject: core java query
Similar Threads
Is JDK same for all platforms(windows,unix,mac) or is it different for different operating systems.
VERY URGENT!!!!!!!!!!!!!!!!!!!!
core java doubt
technical doubt