There are lots of programmers who are interested in the Java programming language. Java is blowing away the storm. The fastest growing programming language and is a phenomenal success. There are lots of hype about Java and what it has to do. There are lots of confusion with respect to the Java topic.
Java is regarded as a life-changing language
There are other programming languages as well which has the properties of making Java attractive. For few applications, many languages are most suitable. But all those properties are brought together by Java in one language.
Let us see these properties in detail:
-automatic garbage collection
Java is regarded as an object-oriented language and an object language deals with objects. Code (methods) and data (member variables) are present in objects. There is a particular class to which each object belongs which is a blueprint that explains the methods and member variables of an object. There is a need for a different way of thinking for object-oriented programming but it is quite good enough to design software when compared to procedural programming. There are famous object-oriented languages that are present today. Java and Smalltalk are developed from the starting to be object-oriented.
For a particular operating system and processor architecture, there are lots of programming languages developed. After the compilation of source code, it is transformed into machine code which can be workable only on a particular type of machine. There is an interpretation of one more type of language. There is no need to compile the interpreted code and as it is running it is translated. This is the reason behind why the interpreted code is quite slow but it is often portable among various operating systems and processor architectures.
Either using PERL or C if complex applications are written you would need to come across the idea of multiple processes before. There are separate copies into which an application can be split which runs concurrently. Code and data are replicated by each copy which leads to increased memory consumption. It would be frustrating and quite complex by getting the copies to communicate together. The operating system is called by involving each process creation which takes up extra CPU time as well.
It is apt to use multiple threads of execution, referred as threads for short. Data and code can be shared by a thread and it has been made simple to share data between thread instances. Less memory is used by them along with CPU overhead. There are few languages similar to C++ for assisting the threads but they are quite complex to use. There are multiple threads of execution built into the language. A different way of thinking is needed by the threads but it can be understood more soon.
Automatic garbage collection:
We are not just limited to trash and reclamation of unused memory is the term garbage collection actually means. Memory space is allocated by JVM when the application creates objects for their storage. When there is no need for objects than for a later use the memory space can be reclaimed.
In programming languages like C and C++ the programmer needs to allocate and deallocate memory manually or else the memory space will be reduced but such worries are not there at the time of using Java.
In Java security is considered a big problem because Java applets are downloaded and executed remotely in a browser there is an increased security concern.Everyone wants their documents to be safe. You can find strong security restrictions at the API level and network access for applets along with support for digital signatures for checking the downloaded code’s integrity. There are frequent checks being done at the bytecode level. The only issue is with the JVM link as it prone to attacks but then need not worry it can be easily fixed.
Reference site: codeinjava
Author name: Harish Sharma