Java 5 & 6 Reference Card

This page hosts my Java Reference Card for Java 5 & 6 and will also host additional related materials in future (see below). Please feel free to bookmark this page.

View the: Java Reference Card

The latest version (22nd May 2007) is v6.0 r7, check the version number (bottom right of sheet) to determine whether you are accessing a cached copy. The previous version is also available. Note that the most recent version of the reference card will always be found on this page, the version(s) held at the Google group (see below) may not include the most recent release.

A structured summary of all the packages in the standard release (obviously not going into the contents of the packages) has also been produced. The on-line resources are superb, but alphabetically structured and I find a more organised/themed presentation helpful. I'm awaiting clearance from the Sun legal team since the text in this card is lightly editted versions of the brief package descriptions on the main Java SE 6 package list, and hence the IPR belongs to Sun. This card will be released publicly asap.

A rather basic page of Question & Answer / Feedback comments relating to the Reference Card is available. Plans and thoughts for future versions of the reference card are here.


Feedback:

Any constructive feedback should be sent to the card author at: JavaRefCard @ dcs.gla.ac.uk
which has a fairly strong spam filter.

A Google group is used to host public discussion about the Java Reference Card, this is open to all for constructive discussion. If abused it will become moderated and/or limited membership.

Google Groups
Visit the Java Reference Card discussion group
To subscribe to the group, enter your Email:

Permissions:

Please see the card itself for the copyright permissions etc.

The basic idea is that you are free (indeed encouraged) to make copies or circulate it, provided this is done for no financial gain (i.e. it is freely copyable for personal, professional and non-profit educational use). However, I do not give permission for it to be re-published in books or on servers or used for direct profit (e.g. in a training course). If you want to do anything like that, you will need to contact me for permission first.

Printing:

Note that the card is formatted for A4 paper, and prints perfectly, unscaled, on my HP 1200 at home. You may find it easier to print (but harder to read) if you scale it to fit your paper size. Apologies for the small print, but there is a lot to get on the sheet!

Purpose:

The reference card fits a different niche from the comprehensive APIs etc, and is primarily intended as an easy to use aide-memoire, especially for programmers who are working in multiple languages simultaneously or who are still getting to grips with the breadth of Java.

Future Plans:

In addition to the main reference/summary cards, my intention is to produce:

History:

This reference card was developed by Dr Peter Dickman at the University of Glasgow Department of Computing Science. Thanks are due for suggesting minor fixes and improvements to: Dr Huw Evans.

This sheet began life as a Java 5 Reference Card (aka Java 1.5), to supplement the textbook, for a course I teach on Java Programming that focusses on the more advanced features of the language, especially concurrency. With the release of Java 6, the target changed slightly so it is now slowly evolving from a Java 5 reference card to a Java 6 reference card. Before starting on developing the summary sheet I did look around to see if I could find a useful Java summary card or reference card, but the only ones that came to hand were focussed on a small subset of the language. This seems to, primarily, be due to the excellence of the online materials, and the widespread use of IDEs (such as Eclipse) which provide easy acces to APIs. It appears that, as a consequence, the few previous attempts at producing a two x A4 sized reference have been abandonned unfinished.

Note that I'm quite old-fashioned, and tend to think of this sort of educational resource as a "reference card" rather than a "summary sheet". The more modern parlance of "cheat sheet" strikes me as a little offensive. My own students do not use this card during exams (they are expected to be able to program well enough without it), but I have no objection if other educators decide it is appropriate as an in-exam resource. Indeed, I'd be interested in hearing reports of it being used in that way. My old-fashioned approach is also demonstrated in this web page, which is deliberately very simple to ensure a fast download.

In May and June 2007 I set up a Google AdWords campaign, and a Google group (see above), focussed on the Java Reference Card. The card was a handy utility to exploit while exploring the Google facilities, which I felt I should know more about for various reasons. Although I spent a few pounds (euros, dollars) on this, there is no intention to try and recoup these costs in any way. The AdWords campaign was a public service, like the reference card itself, and not a commercial activity. I would have also liked to include use of the Google AdSense facility to place adverts on these pages, but suspect that the University wouldn't be too happy if I did :-)


Other Resources:

In case anyone is interested, I'm using the 5th edition of Flanagan's Java in a Nutshell from O'Reilly, as the textbook. It has a decent tutorial at the front and lots of value in the reference material. This works well since my students already have some CS background.

Java in a Nutshell, 5th edition, by David Flanagan was published in March 2005 by O'Reilly, with ISBN 10: 0-596-00773-6, ISBN 13: 9780596007737, and is available from O'Reilly and Amazon.

The exhaustive on-line information repository for Java is Sun's Java site and, in particular, the Java 6 API etc.


Dr Peter Dickman