OOP Ass1 Nanquil
OOP Ass1 Nanquil
OOP Assignment 1
A. Enumerate at least ten (10) features of Java PL and describe each.
1. Simple
Java is straightforward to learn, with syntax that is basic, clear, and easy to grasp. The confusing and
unclear notions of C++ have either been removed from Java or have been re-implemented in a
clearer manner.
For example, whereas pointers and operator overloading do not exist in Java, they are a
fundamental feature of C++.
2. Object Oriented
Everything in Java is an object with data and behavior. Because it is built on the Object Model, Java
can be readily expanded. The following are some fundamental OOP concepts.
i. Object
ii. Class
iii. Inheritance
iv. Polymorphism
v. Isolation
vi. Encapsulation
3. Robust
Java strives to minimize error-prone code by focusing mostly on compile time error checking and
runtime error checking. However, the key areas in which Java improved were memory management
and mishandled exceptions with the introduction of autonomous garbage collectors and exception
handling.
4. Platform Independent
In contrast to other programming languages such as C, C++, and others, which are compiled into
platform-specific machines. Java is a language that is guaranteed to be write-once, run-anywhere.
When a Java program is compiled, it gets converted into bytecode. This bytecode format is platform
neutral and may be executed on any system. It also provides security. Java programs may be
executed on any system that has the Java Runtime Environment.
5. Secure
When it comes to security, Java is unquestionably the best option. With Java's security features, we
can create virus-free and temper-free systems. Java programs always execute in the Java runtime
environment with little contact with the system OS, making them more secure.
6. Multi-Threading
The Java multithreading capability allows you to design programs that can do several tasks at the
same time. The advantage of multithreading is that it uses the same memory and other resources to
run numerous threads at the same time, such as while typing, grammatical errors are checked along
the way.
7. Architectural Neutral
Compiler generates bytecodes, which have nothing to do with a particular computer architecture,
hence a Java program is easy to interpret on any machine.
8. Portable
Java Byte code is portable to any platform. There are no implementation-dependent features.
Everything about storage is predefined, for example, the size of primitive data types.
9. High Performance
Java is an interpreted language, it will never be as quick as a compiled language such as C or C++.
However, Java achieves great speed through the use of a just-in-time compiler.
10. Distributed
Java is also a distributed programming language. Computer networks can be used to run programs.
Java has a class library for interacting over TCP/IP protocols. Creating network connections in Java is
significantly easier than in C/C++.
Source:
https://www.studytonight.com/java/features-of-java.php