The Java programming language is a high-level language that can be characterized by all of the following buzzwords:
- Simple
- Object-oriented
- Distributed
- Interpreted
- Robust
- Secure
- Architecture neutral
- Portable
- High performance
- Multithreaded
- Dynamic
1. Simple
- Java was designed to be easy for a professional programmer to learn and use effectively.
- It’s simple and easy to learn if you already know the basic concepts of Object Oriented Programming.
- Best of all, if you are an experienced C++ programmer, moving to Java will require very little effort. Because Java inherits the C/C++ syntax and many of the object-oriented features of C++, most programmers have little trouble learning Java.
- Java has removed many complicated and rarely-used features, for example, explicit pointers, operator overloading, etc.
2. Object Oriented
- Java is true object-oriented language.
- Almost “Everything is an Object” paradigm. All program code and data reside within objects and classes.
- The object model in Java is simple and easy to extend.
- Java comes with an extensive set of classes, arranged in packages that can be used in our programs through inheritance.
- Object-oriented programming (OOPs) is a methodology that simplifies software development and maintenance by providing some rules.
Basic concepts of OOPs are:
- Object
- Class
- Inheritance
- Polymorphism
- Abstraction
- Encapsulation
3. Distributed
- Java is designed fa or distributed environment of the Internet. Its used for creating applications on networks.
- Java applications can access remote objects on the Internet as easily as they can do in the local system.
- Java enables multiple programmers at multiple remote locations to collaborate and work together on a single project.
- Java is designed for the distributed environment of the Internet because it handles TCP/IP protocols.
4. Compiled and Interpreted
- Usually, a computer language is either compiled or Interpreted. Java combines both this approach and makes it a two-stage system.
- Compiled: Java enables the creation of cross-platform programs by compiling into an intermediate representation called Java Bytecode.
- Interpreted: Bytecode is then interpreted, which generates machine code that can be directly executed by the machine that provides a Java Virtual machine.
5. Robust
- It provides many features that make the program execute reliably in a variety of environments.
- Java is a strictly typed language. It checks code both at compile time and runtime.
- Java takes care of all memory management problems with garbage collection.
- Java, with the help of an exception handling, captures all types of serious errors and eliminates any risk of crashing the system.
6. Secure
- Java provides a “firewall” between a networked application and your computer.
- When a Java Compatible Web browser is used, downloading can be done safely without fear of viral infection or malicious intent.
- Java achieves this protection by confining a Java program to the Java execution environment and not allowing it to access other parts of the computer.
7. Architecture Neutral
- Java language and Java Virtual Machine helped in achieving the goal of “write once; run anywhere, any time, forever.”
- Changes and upgrades in operating systems, processors and system resources will not force any changes in Java Programs.
8. Portable
- Java Provides a way to download programs dynamically to all the various types of platforms connected to the Internet.
- It helps in generating Portable executable code.
9. High Performance
- Java performance is high because of the use of bytecode.
- The bytecode was used so that it was easily translated into native machine code.
10. Multithreaded
- Multithreaded Programs handled multiple tasks simultaneously, which was helpful in creating interactive, networked programs.
- Java run-time system comes with tools that support multiprocess synchronization used to construct smoothly interactive systems.
11. Dynamic
- Java is capable of linking in new class libraries, methods, and objects.
- Java programs carry with them substantial amounts of run-time type information that is used to verify and resolve accesses to objects at runtime. This makes it possible to dynamically link code in a safe and expedient manner.
No comments:
Post a Comment