Software development

Javanotes 9, Section 8 1 Introduction to Correctness and Robustness

However, there are many situations where safety and

security are primary considerations. Another type of pointer error occurs when a pointer value is pointing to an

object of the wrong type or to a segment of memory that does not even hold a

what is robustness in java

valid object at all. These types of errors are impossible in Java, which does

not allow programmers to manipulate pointers directly. In other languages, it

is possible to set a pointer to point, essentially, to any location in memory. If this is done incorrectly, then using the pointer can have unpredictable


Training Labs


Java interpreter can execute Java bytecodes directly on any machine to which the interpreter and run-time system have been ported. In an interpreted platform such as Java technology-based system, the link phase of a program is simple, incremental, and lightweight. You benefit from much faster development cycles–prototyping, experimentation, and rapid development are the normal case, versus the traditional heavyweight compile, link, and test cycles. Primary characteristics of the Java programming language include a

what is robustness in java

simple language that can be programmed without extensive programmer training while being attuned to current software practices. The fundamental concepts of Java technology are grasped quickly; programmers can be productive from the very beginning. Now, we understood that the function of Java Virtual Machine is to execute the bytecode produced by the compiler.

Java’s garbage collection system is a key component of its robustness. This means that developers don’t need to worry about manually managing memory in their programs, which can save time and reduce the risk of errors. Additionally, the garbage collector helps ensure that Java programs are more reliable and less prone to crashes caused by memory-related issues. Robustness is essential for building reliable and secure software systems. It ensures that the application continues to function even when unexpected events occur, such as network failures, memory leaks, and invalid user inputs. Robustness also protects the system from malicious attacks by preventing hackers from exploiting vulnerabilities in the code.

However, it would be a mistake to view Java only in terms of legacy applications. The Java language forms the heart of the Android operating system, which powers by far the largest share of the world’s smartphones. Java is also among the most popular languages for machine learning and data science applications. Its robustness, ease of use, cross-platform capabilities and security make Java the language of choice for internet solutions in many enterprise shops. Java is a widely used object-oriented programming language and software platform that runs on billions of devices, including notebook computers, mobile devices, gaming consoles, medical devices and many others. The rules and syntax of Java are based on the C and C++ languages.

Java was designed from the ground up with security in mind, and as a result, it has a number of features that help to prevent malicious code from being executed. It’s clear that language design can help prevent errors or detect them when


they occur. Doing so involves restricting what a programmer is allowed to do. Or it requires tests, such as checking whether a pointer is null, that

take some extra processing time. Some programmers feel that the sacrifice of

power and efficiency is too high a price to pay for the extra security.

Java was first released in 1995 and is widely used for developing applications for desktop, web, and mobile devices. Java is known for its simplicity, robustness, and security features, making it a popular choice for enterprise-level applications. Java technology is designed to support applications that will be deployed into heterogeneous network environments. In such environments, applications must be capable of executing on a variety of hardware architectures. Within this variety of hardware platforms, applications must execute atop a variety of operating systems and interoperate with multiple programming language interfaces.

Any attempt to use a null value as if it were a pointer

what is robustness in java

to an actual object will be detected by the system. In some other languages,

again, it’s up to the programmer to avoid such null pointer errors. In my first

Macintosh computer, a long time ago, a null pointer was actually implemented as if it

were a pointer to memory location zero. A program could use a null pointer to

change values stored in memory near location zero. Unfortunately, the Macintosh

stored important system data in those locations. Changing that data could cause

the whole system to crash, a consequence more severe than a single failed

  • If you are an enterprise application developer, you already know what Java is, and it’s likely that your organization already has thousands, even millions, of lines of production code written in Java.
  • In many cases, such problems are just annoyances, but even on a

    personal computer there can be more serious consequences, such as lost work or

    lost money.

  • It is robust if it can handle illegal inputs and other unexpected

    situations in a reasonable way.

  • OOP is a programming paradigm that revolves around organising code into objects, encapsulating data and functionality.
  • These features collectively make Java a powerful programming language, widely adopted in various industries for developing robust, scalable, and versatile applications.
  • Java is a robust programming language due to its comprehensive exception-handling mechanism, automatic memory management, strong type checking, runtime checking, and rich set of standard libraries.


But I don’t know what is the exact meaning of it and how to any programmer benefited by it. Understanding the Robust Meaning of Java empowers developers to build high-quality software that can withstand real-world challenges, making it a preferred choice for critical and large-scale projects. As developers harness the robustness of Java, they can create software that not only delivers a seamless user experience but also maintains stability and reliability, even in the face of unexpected situations.

Furthermore, even when an error is detected automatically, the system’s default response is

to report the error and terminate the program. So, a Java programmer still needs to learn techniques for avoiding and dealing with

what is robustness in java

errors. The last chapter of this paper describes the




. The HotJava Browser is an innovative World-Wide Web browser, and the first major applications written using the Java platform. It is the first browser to dynamically download and execute Java code fragments from anywhere on the Internet, and can do so in a secure manner. With Java, you can use one single system across a broad range of use cases.

what is robustness

Another type of error that cannot occur in Java is a memory leak. In Java,

once there are no longer any pointers that refer to an object, that object is

“garbage collected” so that the memory that it occupied can be reused. In other

languages, it is the programmer’s responsibility to return unused memory to the


Existing desktop applications can be easily adapted to run on smaller devices that have limited resources. If you are an enterprise application developer, you already know what Java is, and it’s likely that your organization already has thousands, even millions, of lines of production code written in Java. You will likely need some level of Java expertise to allow you to troubleshoot, maintain, and upgrade your existing codebase. If everything is OK, the “javac” compiler creates a file called “Test.class” containing byte code of the program.

Instead, the developer will try to generalize such cases.[5] For example, imagine inputting some integer values. Some selected inputs might consist of a negative number, zero, and a positive number. When using these numbers to test software in this way, the developer generalizes the set of all reals into three numbers. This is a more efficient and manageable method, but more prone to failure.

For the sake of my discussion a Bool can have 2 states, True or False. Anything else is non-conformance to the programming langugae specification. If your tool chain is non-conformant to its specification, you are hosed no matter what you do. If a developer created a type of Bool that had more than 2 states, it’s the last thing he would ever do on my codebase.

The Java programming language is designed for creating highly

reliable software. It provides extensive compile-time checking, followed by a second level of run-time checking. Language features guide programmers towards reliable programming habits. IBM® WebSphere® Application Server is a flexible, secure Java server runtime environment for enterprise applications. Deploy and manage applications and services regardless of time, location, or device type.

One major advantage of developing software with Java is its portability. Once you have written code for a Java program on a notebook computer, it is very easy to move the code to a mobile device. When the language was invented in 1991 by James Gosling of Sun Microsystems (later acquired by Oracle), the primary goal was to be able to “write once, run anywhere.” Robustness plays a vital role in enhancing the reliability and stability of Java Applications, making them more resistant to failures and better equipped to handle unforeseen situations. To achieve this level of robustness, Java employs several features and practices.

Leave a Reply

Your email address will not be published. Required fields are marked *