1. Simple
  2. Object-oriented
  3. Distributed
  4. Multithreaded
  5. Interpreted and Dynamic
  6. Architecture neutral
  7. Portable
  8. High performance
  9. Robust
  10. Secure

1. Simple

Java Programming Language is very Simple to learn so that anyone can grasp it quickly and start using it very quickly. The need for this feature enables the new programmers to start the work on Java immediately.

2. Object oriented

Java Programming Language is designed considering Object Oriented concept.
Everything in Java is an Object.
Java Technology provides a clean and object-based development platform.
There are many existing libraries of tested objects that can be accessible to programmers to get basic to advance functionalities.

Object-oriented programming (OOPs) is a methodology that simplifies software development and maintenance by providing some set of rules.

Below are the Main OOPS concepts in Java:

  1. Object
  2. Class
  3. Inheritance
  4. Abstraction
  5. Encapsulation
  6. Polymorphism

 

3. Distributed

distributed systems

Java is distributed because it allows users to create distributed applications in Java. RMI and EJB are used for creating distributed applications.

Let’s Understand what is distributed Systems. In a Distributed system, multiple entities are talking to each other over the internet or network while performing its own task.

4. Multithreaded

MultiThreading

Thread: Thread is nothing but the lightweight process or execution context.

In Multithreading, we are initiating multiple threads to complete the task in a better manner and in less time. It utilized the same memory and other resources to execute multiple threads at the same time.

Multithreading is the way to obtain fast, lightweight concurrency within a single process space.

5. Interpreted and Dynamic

The source code is first compiled into the binary byte code and then it is interpreted by Java Virtual Machine.

Java is Dynamic because using OOPs concept we can add more classes or methods for new functionality by implementing subclasses. This way Java is Dynamic.

6. Architecture neutral

The compiler generates the Byte codes which can be run on any computer. This Byte code has nothing to do with particular computer architecture. Hence Java is Architecture Neutral. 

7. Portable

Java is Portable as the  Java Source code is compiled into ByteCode. The same ByteCode program can be run on any computer where the Java Interpreter is available. 

8. High performance

Java uses JIT Just In Time Compiler to improve the performance. Just In Time Compiler, compiles the parts of byte codes having similar functionalities at the same time reducing the amount of compilation time. 

9. Robust

Java is Robust because it uses strong memory Management. If the object is no longer in use it automatically removes that object from memory. Java uses Garbage collection functionality to do Memory Management.

10. Secure

Java applications run in a Java runtime environment (JRE) with almost no interaction with system OS. It makes Java more secure than other programming languages. It basically creates its own isolated runtime to execute the java programs which makes it more secure. Java technology lets you construct applications that can’t be invaded from outside. 

Java Features Interview Questions

Java Features Interview Questions:

1. What are java features

  1. Simple
  2. Object-oriented
  3. Distributed
  4. Multithreaded
  5. Interpreted and Dynamic
  6. Architecture neutral
  7. Portable
  8. High performance
  9. Robust
  10. Secure

2. Which of the following is not a Java features?

  1. Simple
  2. Object-oriented
  3. Distributed
  4. Use of Pointers

Ans: 4. Use of Pointers