Features Of Java:-
Java is a general-purpose programming language developed with the aim to bring portability and a higher level of security. Other than these two main java features, there are many other features of Java that make it such a unique and popular language.
List of features of Java programming languages :-
1. Simplicity :-
Java is a very simple language as it is derived from C++ and C. So a user who has learned the C and C++ programming can easily do it by learning basic Java syntax.
Java removes the features, which were not used and created confusion too. There is also a facility for automatic garbage collection in Java so that you don’t have to delete unreferenced objects.
2. What Is Object-Oriented :-
Java is an Object-oriented language as it modeled around ‘objects’ rather than on the ‘process’. Object-oriented programming has the following concepts that the Java language also has-
- Objects & Methods
3. What Is Platform Independence :-
Java is a platform independent language, that means we can directly execute java on any platform but that platform should have valid JVM installed.
Java can run on multiple platforms as the program written is compiled and then the bytecodes generated is platform-independent code, Java offers the feature “Write Once, Run Anywhere (WORA)”.
4. What Is Security :-
Java is known to be such a secure language because of the following features –
1. Java has no explicit pointer.
2. Programs are run in a virtual machine sandbox.
3. Java adds a class loader which separates the classes for a package of the local file system from imported ones from a network.
4. It has a bytecode verifier which checks the code fragments for any illegal code that violate the access right.
5. It as a security manager that defines the access for Java classes.
5. What Is Robustness :-
Java is a robust language i.e. a strong language. It uses a strong memory management, the lack of pointers helps in security issues, an automatic garbage collection, exception handling and also type checking mechanism which in all makes it a very strong language.
6. What Is Neutral Java Architecture :-
In Java, codes are compiled and thus bytecodes are generated. These bytecodes can run on any computer architecture thus making Java architecture neutral.
7. What Is Portability :-
Java is a highly portable language as the bytecodes can be carried to any platforms.
8. What Is High performance :-
Java offers high performance due to its bytecodes, it is faster than any interpreted language. Java architecture is designed to reduce overheads during runtime.
9. Distributed Applications :-
Java can create distributed applications using RMI and EJB. This feature of Java facilitates the user to call any file by calling any method on any computer.
10. Multi-Threading :-
A thread in any language is a different program that runs concurrently, this feature helps Java to handle multiple tasks simultaneously. Threads don’t occupy memory, it works on memory sharing.
11. Dynamics :-
Java is a dynamic language which means it can link new Java class libraries, Java objects, and Java methods dynamically. It also supports functions from its native languages such as C and C++.
⇒ Below is the list of java softwares that we can use :-
1. JDK :-
. If you want to do development in java then its compulsory to use JDK software. It provides development tools like java compiler i.e. javac, then javap, javaw, java, javadocs and many other development tools. So in order to use these development tools we have to compulsory use JDK.
(You can download latest version of JDK software from oracle official website).
2. Editor :-
JDK just provides development tools, but if we want to write java programs where we can do ? For this we can use any editor like
etc. We can do java code in any of these editors and save the file as FileName.java and just compile and run them.
3. IDE :-
Editor has some of disadvantages that they cannot be used for big level projects as they cannot provide an environment. So if you want to create big level projects then we can use any of java IDE (Integrated Development Environment). Main IDE’s used for java are and many more.
JDK, JRE & JVM:-
⇒ Below is the diagram showing the
Architecture of JDK, JRE and JVM.
⇒ JDK (Java Development Kit) :-
JDK contains tools needed to develop the java programs. The tools include java compiler (javac.exe), java application launcher (java.exe), java web (javaw.exe), appletviewer, java documentation (javadocs.exe) and many more.
JDK is mainly targeted for java development i.e. we can create java file (with the help of java packages), compile a java file and run the java file.
JDK = JRE + Development Tools
⇒ JRE (Java Runtime Environment) :-
JRE contains JVM (Java Virtual Machine), class libraries and other supporting files. It does not contain any development tools like compiler, debugger etc.
If you need to run java program, you need to have JRE installed in your system.
JRE = JVM + Java Package Classes + Runtime Libraries
⇒ JVM (Java Virtual Machine) :-
JVM is an abstract machine. It provides runtime environment(or say virtual machine) in which java bytecode can be executed.
JVM is available for many hardware and software platforms. JVM is platform dependent because configuration of each OS differ and this makes java platform independent.