Java

Java

Object-Oriented

Java is object-oriented. The basic units of Java are classes, which have attributes and methods. This is a mechanism for grouping code into logical blocks. From a design point of view this can be a very efficient approach, as it assists in minimising re-use and promoting designs where code is not repeated.

Attributes and Characteristics

A class has zero or more attributes.

Methods and Functions

A class has zero or more functions, or methods which can be called in reference to the class.

Inheritance of Attributes and Methods

Single Inheritance

Java supports single inheritance.

Multiple Inheritance

Java does not support multiple inheritance. This means that there are no ambiguities when it comes to code inheritance, as would be the case where multiple inheritance is allowed. However, we then need to account for the case where a class inherits more than 2 types of characteristics. This can be done using an interface. All interface methods are abstract.

Automatic Memory Management - Automatic Garbage Collection

Java supports automatic garbage collection, whereas C++ does not.

Virtual Machine

Java uses the concept of a virtual machine to promote portability of java across a wide variety of different platforms.

Articles

Analysis of Java - http://www.peterbecker.de/texts/javacritique.html

Access Levels and Access Modifiers

Java has four access levels and three access modifiers. There are only three modifiers because the default (not using an access modifier) is one of the four levels.

Access Level: public

Any code within the class can be accessed. Modifier: public.

Access Level: protected

Allows classes outside the package to inherit the protected class. Protected access only applies to inheritance. Useful in the case of security, for example password related code, where code must be inherited but not modified. Modifier: protected.

Access Level: default

Only code within the same package can access the code. Modifier: none.

Access Level: private

Only code within the same class can access the code. Modifier: private.

Java Applets

java applets examples
javascript examples


Java Applets on this website

This site uses Java applets in order to demonstrate the technology that it available. None of these applets were written by me. You can follow the original source link if you want to find out more, from the people who developed them.

Object Oriented

Zaurus


Sharp Zaurus SL-C700


info401 FRAGMe Project

Development Environment


Java for the Zaurus comes in two different forms, the supplied Jeode PersonalJava which is a version of 1.1.8, and Personal Profile Java which is a version of Java based on 1.3, but optimised for the Zaurus to provide fast response times.

Issue - communication

A number of different standards were considered in order to implement the communication activities.  The initial choice was to implement a socket based solution.  However, after some initial work, the strategy was changed to implement RMI, as it was considered a better development model on which to build the communication layer.

A number of other possible solutions was considered including the use of JINI, and also the use of JXTA.  These options were rejected on the basis that they would introduce too much complexity and overhead to the solution, especially as a "lightweight" framework was being developed.

Issue - applications to demonstrate a distributed object architecture

A number of different applications have been put forward as good examples to demonstrate a distributed object architecture.  These examples include BUTTON, PONG, ZONE, RACING, PIT, File Sharing,

Issue - layered approach

The object layer has functional dependence on the distribution layer, however there should be no functional dependence from the distribution layer to the object layer.

Issue - mapping of the underlying definitions and the test cases

Issue - maintenance of global clocks