View this PageEdit this PageAttachments to this PageHistory of this PageHomeRecent ChangesSearch the SwikiHelp Guide
Hotspots: Admin Pages | Turn-in Site |
Current Links: Cases Final Project Summer 2007

Discussion 1: Java vs C++ and Eiffel

Java and the Object-Oriented Paradigm: Comparison and Evaluation
http://www.cs.kuleuven.ac.be/publicaties/rapporten/cw/CW249.ps.gz

This article compares Java to other major object-oriented languages such as C++ and Eiffel (also mentioning Smalltalk Beta) to determine whether the popularity of Java is due to the features of the language or its OO features.

The article includes this table to summarize the comparison between the languages:
Java C++ Eiffel
Notion of Object & Class Yes Yes Yes
Object Representation
(Explicit) Pointers No Yes No
Part (sub)Objects No Yes Yes
Object Behavior
Design by Contract No No Yes
Constant Qualification Yes Yes No
Object Encapsulation
Selective Export Yes (package) Yes (friend) Yes
Integral Interface/Impl. Yes No Yes
Cass Dependencies import statement include statement System Resp.
Object Const./dest.
Multiple Constructors Yes Yes Yes
Garbage Collection Yes No Yes
Inheritance Single Multiple Multiple
Generics No Yes Yes
Exception Handling Yes Yes Yes

As far as the programmer's experience, Java is cited as being easy to learn since a lot of its syntax is borrowed from C++, and the software development process is typically shorter. In conclusion, however, the Java doesn't introduce any new OO concepts, and even discarded a few for the sake of simplicity.

Links to this Page