1. Compiled and Interpreted:
The Interpreter translates just one statement of the program at a time into machine code. Compiler scans the entire program and translates the whole of it into machine code at once. Java is compiled to generate bytecode and the bytecode is interpreted to execute human-understandable code.
2. Platform Independent and Portable :
Portability refers to the ability to carry the Java bytecode from one system to another system to execute the code. Java programs can be easily moved from one computer system to another, anywhere and anytime.
3. Object-Oriented :
Java is a true object-oriented language. An object is a software bundle of variables and related methods. Everything that the software object knows (state) and can do (behavior) is expressed by the variables and methods within that object.
4. Multithreaded and Interactive :
Multithreaded means handling multiple tasks simultaneously.Java supports multithreaded programs, that we need not wait for the application to finish one task before beginning another.