CORE JAVA

ProwessApps Learning Portal

Introduction of Java


  • Java is a general-purpose computer programming language that is concurrent, class-based and object-oriented.

  • Java was developed by James Gosling in 1991 at Sun Microsystems(now owned by Oracle Corporation).

  • Sun Microsystems released the first public implementation as Java 1.0 in 1995.

  • The language was initially called Oak,Later the project went by the name Green and was finally renamed Java.

  • One Language : Four Editions

    • Standard Edition ( JSE )
    • Enterprise Edition ( JEE )
    • Micro Edition ( JME )
    • Java Card Technology ( JCT )
Features of Java:
1. Simple :

According to Sun Microsystems, Java language is very simple to learn and code because:

  • Syntax is based on C++ (so its is easier for programmers to learn it after C++).

  • Remove so many confusing and/or rarely-used features e.g., explicit pointers, operator overloading,virtual concepts etc.

  • Do not need to bother about un-referenced object, that will be removed automatically by Garbage Collector.


2. Object Oriented :

Java is an object oriented programming language. It supports all principles of Object Oriented Programming :

    1. Abstraction
    2. Encapsulation
    3. Inheritance
    4. Polymorphism


3. Platform Independent :

Java is based on the concept of WORA (write once run anywhere).

  • The target of Java is to write a program once and then run this program on multiple operating systems.

  • Java code requires both compiler & interpreter.

  • When you compile a java source code it produce a bytecode ( .class file).

  • This bytecode is for Java Virtual Machine ( JVM ), not for real machine.

  • JVM is specific to a platform & produce platform specific machine code.


4. Auto Memory Management :

In Java you don't need to care of de-allocation of garbage (un-referenced objects).

JVM delegates the job of garbage collection to a thread, called garbage collector, working of garbage collector is monitored & controlled by JVM itself.


5. Multi-threaded :
  • Multi-threading helps in achieving Multi-tasking.

  • Java has language-level support of Multi-Threading.

  • A thread is an independent path of execution.

  • Multi-threading saves wastage of CPU cycles. It makes the application more productive & responsive.


6. Robust :
Robust means simple strong.
  • Java is strongly typed language (that is, all variables must be assigned an explicit data type).

  • Java has language-level support for exception handling.

  • Java automatically checks the array boundary. It's not the case of its predecessors languages.

  • There are lack of pointers that avoids security problem.

  • There is automatic garbage collection in java.


7. Secure :
  • Elimination of direct memory pointer & automatic array limit checking prevents rouge programs from reaching into section of memory where they shouldn't.

  • Untrusted programs are restricted to run inside the JVM. Access to the platform can be strictly controlled by a security manager.

  • Code is checked for pathologies by class loader and a bytecode verifier.


8. Architecture neutral :

In Java there is no dependent features e.g. size of primitive data type is fixed for all type Architecture (32 bit or 64 bit). Hence, Java compiler generates an architecture-neutral file format, which makes the compiled code executable on any architectural machine, with the presence of Java runtime system.


9. Portable :

Since, java is architecture-neutral and having no implementation dependent aspects, makes Java portable. You may carry the java bytecode to any platform.


10. Distributed :

You can create a distributed application with the help of JAVA. You may access by calling the methods from any machine on the internet.





advertisement