AboutAda HomeQuick PageGuideWelcome TourWhat's New?Online RM95Ada FAQYour Feedback

Follow this link to learn more about advertising here
Advertise and reach thousands of Ada programmers!

Ada Home Floors: Resources -- Ammunition Dept. -- Discovery Tour -- Network

Resources for Ada

Ada and the WWW/Java

Ada 95, Java, and C++

Ada 95 Reference Manual
Java language documents
C++ Working Paper

Some people believe that Java is "like" C++. However, usual C++ idioms do not carry over to Java because Java is not a superset of C++. Java is not even a subset of C++; it can at best be seen as a derivation with many modifications and extensions. Thus the syntax of Java and C++ may seem similar at a first glance, but the semantics and philosophy of these two languages is very different.

Java is closer to Ada 95 than to C++, syntax notwithstanding.

A minimal comparison of Java with C++ and Ada 95

Java C++ Ada 95
Inheritance Single
(but with multiple subtyping)
Multiple Single
(but supports MI)
Preprocessor No Yes No
Separate
Interface/Implementation
No
(interface generated from code)
Yes
(header files)
Yes
(specifications)
Garbage Collection Yes No Yes
Operator Overloading No Yes Yes
Pointer Arithmetic No Yes No
Generics No
(but extensive polymorphism)
Yes
("templates")
Yes
Exceptions Yes Yes Yes
Native Multi-threading Yes No Yes

The comparison chart was developed on the basis of one sent by Bill Beckwith on the Team-Ada mailing list (and formatted in HTML by Bob Crispen).

HBAP Copyright © 1994-1996 by KSCE. All Rights Reserved. Reproduction in whole or in part in any form or medium without express written permission of KSCE is strictly prohibited. Ada Home and Home of the Brave Ada Programmers are trademarks of KSCE. For comments, additions, corrections, gripes, kudos, etc. please send email or use the Ada Home feedback page. Page last modified: 1996-10-01