What is Java?

Java is a high level programming language that follows the object oriented principles. Java is syntactically and structurally modeled after C/C++. 

One of the important difference that Java has from other languages is that Java has always tried to avoid accidental mistakes, and has even removed some features from C/C++ that were prone to errors like pointers, destructors etc, and adds features such as automatic memory management called Garbage Collection. It also did not support multiple inheritance to avoid diamond problem. Keeping this design goal of Java to be a safe language will help you derive on most of the things you can do and cannot do with Java without actually learning them by heart. 

Java is a compiled and interpreted language. Java is interpreted at run time rather than compiled like C/C++.  But it also performs various compile-time and run-time checking operations unlike other interpreted languages. 

Java is platform independent. Java executable uses an architecture neutral bytecode. The byte codes are interpreted and executed by a platform specific Java Virtual Machine (JVM) installed on that platform. 

Java also supports many other features such as threading, networking, security, and Graphical User Interface (GUI) development. 



Read more on object oriented programming @ javajee.com/object-oriented-programming-oop-concepts-with-examples.

Read more on compiled and interpreted languages @ javajee.com/java-is-a-compiled-and-interpreted-language.




kmakete's picture

Describe the purpose of the MAIN method in a Java program and provide the code for the main method that creates an instance of the Engine class in which it is contained.

Was it useful?

Main method is just like any other method. Only difference from other methods is that java already knows about this method with the correct signature (public static void main(String args[])) and when you execute a class, java runtime will look for this method, and automatically calls that method. 

For a complete clarity, please read notes 5 to 9 @  beginning-java-book and then read questions 7, 8 @ frequently-asked-interview-questions-in-core-java-part-1.

Still unclear, please feel free to ask again.

Was it useful?
kmakete's picture


Was it useful?

In simple terms, machine language is a language understood by machine. Your computer system won't by default understand java or any language. A high level language is a language which can be written in a human like language like English. A compiler/interpreter software then converts this high level language to machine language in single steps or multiple steps. For instance, a compiler/interpreter will convert your high level code which can be understaood by the operating system and then the operating system will convert it into a form which can be understood by the hardware system.

Was it useful?

what the differnce between java. j++. JavaScript , jsp , core java , j2ee

Was it useful?

J++ can be considered as Microsoft's implementation of Java, which is not very popular.

JavaScript has no relation to Java programming language except for the similarity in name and some similarity in syntax. Javascript is one of the many web technologies understood by your browser. When you program for web using Java, you will use Java along with web technologies like HTML, Javascript and CSS.

JSP can be considered as an html file with Java inside.

Core java need only JDK.

Java EE or J2EE require a web container or application server.

Was it useful?
siva prasad's picture

Could you please provide History of Java ?

Was it useful?

architecture neutrality means ......?

Was it useful?

Architecture neutral means, code without worrying about the target platform (hardware). There are JVMs specific to different platforms and you don't have to worry about any platform specifics like size of an int or any primitie while writing code. 

You can find the definition of platform neutrality @ http://encyclopedia2.thefreedictionary.com/architecture+neutral.

Was it useful?


Was it useful?

Quick Notes Finder Tags

Activities (1) advanced java (1) agile (3) App Servers (6) archived notes (2) ArrayLists (1) Arrays (2) Best Practices (12) Best Practices (Design) (3) Best Practices (Java) (7) Best Practices (Java EE) (1) BigData (3) Chars & Encodings (6) coding problems (2) Collections (15) contests (3) Core Java (All) (53) course plan (2) Database (12) Design patterns (8) dev tools (3) downloads (2) eclipse (9) Essentials (1) examples (14) Exception (1) Exceptions (4) Exercise (1) exercises (6) Getting Started (18) Groovy (2) hadoop (4) hibernate (77) hibernate interview questions (6) History (1) Hot book (5) http monitoring (2) Inheritance (4) intellij (1) java 8 notes (4) Java 9 (1) Java Concepts (7) Java Core (8) java ee exercises (1) java ee interview questions (2) Java Elements (16) Java Environment (1) Java Features (4) java interview points (4) java interview questions (4) javajee initiatives (1) javajee thoughts (3) Java Performance (6) Java Programmer 1 (12) Java Programmer 2 (8) Javascript Frameworks (1) Java SE Professional (1) JPA 1 - Module (6) JPA 1 - Modules (1) JSP (1) Legacy Java (1) linked list (3) maven (1) Multithreading (16) NFR (1) No SQL (1) Object Oriented (9) OCPJP (4) OCPWCD (1) OOAD (3) Operators (4) Overloading (2) Overriding (2) Overviews (1) policies (1) programming (1) Quartz Scheduler (1) Quizzes (17) RabbitMQ (1) references (2) resources (1) restful web service (3) Searching (1) security (10) Servlets (8) Servlets and JSP (31) Site Usage Guidelines (1) Sorting (1) source code management (1) spring (4) spring boot (3) Spring Examples (1) Spring Features (1) spring jpa (1) Stack (1) Streams & IO (3) Strings (11) SW Developer Tools (2) testing (1) troubleshooting (1) user interface (1) vxml (8) web services (1) Web Technologies (1) Web Technology Books (1) youtube (1)