Features of Java
Features of Java
1
4. Secured
Java is best known for its security. With Java, we can develop virus-free
systems. Java is secured because:
• No explicit pointer
• Java Programs run inside a virtual machine
• Classloader: Classloader in Java is a part of the Java Runtime
Environment (JRE) which is used to load Java classes into the Java Virtual
Machine dynamically. It adds security by separating the package for the
classes of the local file system from those that are imported from
network sources.
• Bytecode Verifier: It checks the code fragments for illegal code that can
violate access rights to objects.
• Security Manager: It determines what resources a class can access such
as reading and writing to the local disk.
5. Robust
The English mining of Robust is strong. Java is robust because:
• It uses strong memory management.
• There is a lack of pointers that avoids security problems.
• Java provides automatic garbage collection which runs on the Java
Virtual Machine to get rid of objects which are not being used by a Java
application anymore.
• There are exception handling and the type checking mechanism in Java.
All these points make Java robust.
6. Architecture-neutral
the size of primitive types is fixed.
In C programming, int data type occupies 2 bytes of memory for 32-bit
architecture and 4 bytes of memory for 64-bit architecture. However, it
occupies 4 bytes of memory for both 32 and 64-bit architectures in Java.
2
7. Portable
Java is portable because it facilitates you to carry the Java bytecode to any
platform. It doesn't require any implementation.
8. High-performance
Java is faster than other traditional interpreted programming languages
because Java bytecode is "close" to native code. It is still a little bit slower than
a compiled language (e.g., C++). Java is an interpreted language that is why it is
slower than compiled languages, e.g., C, C++, etc.
9. Distributed
Java is distributed because it facilitates users to create distributed applications
in Java. RMI and EJB are used for creating distributed applications. This feature
of Java makes us able to access files by calling the methods from any machine
on the internet.
10. Multi-threaded
A thread is like a separate program, executing concurrently. We can write Java
programs that deal with many tasks at once by defining multiple threads. The
main advantage of multi-threading is that it doesn't occupy memory for each
thread. It shares a common memory area. Threads are important for multi-
media, Web applications, etc.
• It lets Java developers execute multiple threads at the same time.
• It’s used to achieve multitasking.
• It saves time.
• It’s mostly used in games and animation.
• Threads work independently and don’t impact other threads, even if
created simultaneously.
11. Dynamic
Java is a dynamic language. It supports the dynamic loading of classes. It means
classes are loaded on demand. It also supports functions from its native
languages, i.e., C and C++.
3
12. Scalability
Java offers its users scalability, which means it can deal with more and more
users and works. It is so because:
• Java is an object-oriented programming language.
• It has the ability to handle large databases.
• Java doesn’t require multiple resources while running.
• It uses multithreading and multiprocessing.
• Java includes a higher volume of code.