Features of Java
- Object oriented
- Platform independent
- Architectural neutral
- High performance
Java was designed to be easy for the professional programmer to learn and use effectively. Assuming that you have some programming experience, you will not find Java hard to master. If you already understand the basic concepts of object-oriented programming, learning Java will be even easier. 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++.
2 Object oriented
Java is an object-oriented language, which means that it has constructs to represent objects from the real world. Each Java program has at least one class that knows how to do certain things or how to represent some type of object. For example, the simplest class, HelloWorld, knows how to greet the world.
3 Platform Independent
A program or technology is said to be platform independent if and only if which can run on all available operating systems.
The languages like C, C++ are treated as platform dependent languages since these languages are taking various amount of memory spaces on various operating systems The language like JAVA will have a common data types and the common memory spaces on all operating systems and the JAVA software contains the special programs which converts the format of one operating system to another format of other operating system.
Java provides high security compare to other languages. Because there are lots of concept is available in java and these all are the concept and features provide high security.
To gain reliability, Java restricts you in a few key areas, to force you to find your mistakes early in program development. At the same time, Java frees you from having to worry about many of the most common causes of programming errors. Because Java is a strictly typed language, it checks your code at compile time. However, it also checks your code at run time.
6 Architectural Neutral
A language or technology is said to be architectural neutral which can run on any available processors in the real world. The languages like C, C++ are treated as architectural dependent can run on any of the processor. The Java designers made several hard decisions in the Java language and the Java Virtual Machine in an attempt to alter this situation. Their goal was â€œwrite once; run anywhere, anytime, forever.â€ To a great extent, this goal was accomplished.
A portable language is one which can run on all operating systems and on all processors The languages like C, C++ are treated as non-portable languages whereas the language JAVA is called portable language.
Java programs carry with them substantial amounts of run-time type information that is used to verify and resolve accesses to objects at run time. This makes it possible to dynamically link code in a safe and expedient manner.
Java is a compiled and interpreted language java first compiled the source code and produce bytecode And these byte code is interpreted by java interpreter and produce native code that is our output. Java has used interpreter for achieving a platform independence, because byte code can run on any platform.
10 High Performance
There are many reason why java performance is high java can run on any platform , java is both compiled and interpreted language , java byte code can run on any platform , different kind of application can made by java language etc.
Java was designed to meet the real-world requirement of creating interactive, networked programs. To accomplish this, Java supports multithreaded programming, which allows you to write programs that do many things simultaneously. A program is said to be multi threaded program if and only if there exist n number of programs. For each and every such programs there exist a separate flow flow of controls are executing concurrently. Such flow of control is known as threads. Such type of application is known as multi threading application. Java, however, was designed to perform well on very low-power CPUs. As explained earlier, while it is true that Java was engineered for interpretation, the Java bytecode was carefully designed so that it would be easy to translate directly into native machine code for very high performance by using a just-in-time compiler. Java run-time systems that provide this feature lose none of the benefits of the platform-independent code. â€œHigh-performanceâ€.
Java is designed for the distributed environment of the Internet, because it handles TCP/IP protocols. In fact, accessing a resource using a URL is not much different from accessing a file. a service is said to be distributed service which runs on multiple servers and that services can be access by n number of clients across the globe. in ordered to develop distributed application we must require architecture called trusted networked architecture.
In a real world we have two types of networks. They are un-trusted network and trusted networks.
Un-trusted networks: A network is said to be un-trusted network in which there exist n number of inter connected non autonomous architecture un-trusted network is also known as LAN. Using these network architecture, we can develop centralized application.
Trusted network: A networks is said to be trusted network in which there exist n number of inter connected non autonomous architecture un trusted network is also known as WAN. Using these network architecture, we can develop distributed application.