Javelin  TM
The World's Leading and Most Intuitive Visual Object 
Oriented Development Tool for JAVA
NOTE: readme.doc and readme.txt have the same content. One is an MS Word 
document which can be read by WordDoc or MS Word and one is a plain text file 
which you can read with notepad.exe
1. INTRODUCTION	2
2. HISTORY	2
3. PRICING AND ORDERING	2
3.1. PRICING	2
3.2. HOW DO I PURCHASE MY COPY?	2
3.3. DISCOUNTED STUDENT PURCHASES	Error! Bookmark not defined.
4. REQUIREMENTS	3
5. INSTALLATION	3
6. NEW FEATURES	3
6.1. VERSION 5.00	3
6.2. NEW SINCE VERSION 4.46	4
7. GETTING STARTED	5
7.1. FEATURE OVERVIEW	5
7.2. QUICK START TUTORIAL	5
8. JAVELIN FEATURES	5
8.1. LONG FILENAMES	6
8.2. CODE GENERATION	6
8.3. COMPILING JAVA SOURCE FROM JAVELIN	6
8.4. RUNNING YOUR JAVA PROGRAMS	6
8.5. IMPLEMENTS	6
8.6. ASSOCIATIONS	6
9. NOTES FOR NT 3.5X USERS	7
10. TRADEMARKS	7



1. Introduction
Javelin was the first to bring truly graphical object oriented development to Java developers. Step Ahead 
Softwares commitment to innovative reasearch and development ensures that Javelin users are working 
with the most advanced, quality tool money can buy. Users deal with classes as icons and rarely concern 
themselves with the underlying text files. Improved productivity through reusability, automatic 
documentation, an uncluttered workspace and full support of the object oriented programming model 
makes Javelin the first choice for both beginners and experienced Java developers alike.
Step Ahead Software have taken a unique evolutionary approach to the development and release strategy 
of Javelin. Rather than releasing major revisions once or twice a year we develop a small group of new 
features and test them incrementally so that releases are more frequent. This brings newer features to users 
in a much shorter time frame. Distribution via the internet makes this approach possible. Many minor 
upgrades can be downloaded and used free of charge by those who have already purchased a license. 
Certain releases with major new features will require an upgraded license to be purchased and a new 
password will be provided. Existing users can upgrade their licenses at heavily discounted rates. When 
upgrading to a license users must quote their existing serial number. Part of the license agreement forbids 
giving access to or otherwise making available your serial number or password to another person by any 
means.
2. History
Javelin is a version of the internationally successful Visual Classworks graphical object oriented 
development for C++ created by Step Ahead Software Pty Ltd. Visual Classworks generates and 
manipulates C++ code via the graphical user interface. Javelin works the same as Visual Classworks 
except that it has a JAVA code generation engine instead of a C++ code engine. For this reason the two 
products are very similar. In fact they share much common code. When we add enhancements to Visual 
Classworks/C++ these will be automatically incorporated into the Javelin product and available in the 
next version.
3. Pricing and Ordering
This section only applies to those who have not already purchased their copy of Javelin professional. If 
you have already purchased it then ignore this section.
As distributed from our site or other sites this evaluation version of Javelin is FULLY FUNCTIONING 
but displays an evaluation message at start up and shut down. When you purchase a user license you will 
promptly receive your serial number and password via email or fax when you purchase your license. This 
will remove the evaluation messages, turning your evaluation into the full professional edition.
3.1. Pricing
Javelin pricing information is contained in the file order.txt. Javelin is priced so well that it smashes apart 
the price/performance barrier for tools of this nature.
3.2. How do I Purchase my copy?
When you purchase your copy of Javelin you actually receive a serial number and password which convert 
your unlicensed evaluation copy to a licensed real copy. See order.txt for pricing information. We 
accept VISA and Mastercard payments. To order your password and serial number do one of the 
following:
  If you are located in USA or Canada phone TOLL FREE 800 210 942.
  If you are located outside USA and Canada phone +61 2 477 3398 
  Fill out the order form in order.txt in the C:\JAVELIN directory or the directory to which you installed 
Javelin and fax it to +61 2 452 3363.
You can also visit our Web site http://www.ozemail.com.au/~stepsoft for ordering information.
4. Requirements
You will need:
  Windows 95 or Windows NT. The javac compiler and appletViewer are 32 bit applications and will 
not work on Win 3.11. On Windows 95 and Windows NT Javelin allows long filenames for the class 
files.
  Suns JDK (Java Developers Kit). This contains the compiler and other tools you may find useful. The 
JDK is available from Suns site: http://java.sun.com
  3 MB hard disk space on your PC for Javelin plus whatever is required for Suns JDK.
5. Installation
If you received a printed booklet with your copy of Javelin then follow the installation instructions on that 
instead of this document.
Choose Start|Run and enter setup.exe or at the DOS prompt in Win 95 just type setup when you are in the 
directory containing the decompressed distribution files.
If you have any questions please dont hesitate to email us at stepsoft@ozemail.com.au We pride 
ourselves in being keen to turn valuable user feedback into better products.
6. New Features
6.1. Version 5.00b
6.1.1. Class Browser
You can now search for classes in a class list box. From there you can also get to the details and members 
dialog box for each class. In addition hitting the Show button will focus the design slate on the current 
class.
6.1.2. Import Facility
Makes it easy to import your existing Java code or sample or tutorial code into Javelin. You can import 
classes as library (no code generation) or user classes (a new source file will be created and from that 
point changes made via Javelin will be reflected in the new source file).
Be sure to read up on importing in the online help.
6.1.3. Improved Performance
The slickest and fastest graphical environment for Java just got slicker! Javelins efficiently written code 
has always resulted in excellent performance even on the low end 80386 PCs - now its even quicker!
6.1.4. New Enhanced support for Interfaces
Version 5.03 now supports the direct creation and modification of interfaces. They are drawn differently 
to classes. Interfaces are displayed with a notch in the top right corner. Only static variables and abstract 
methods can be added to an interface as interface methods can never have code associated with them. 
Instead the methods declared in an interface must be coded by classes that implement the interface.
To create an interface right click on empty space in the design slate and select Add Interface. The dialog 
box used for interfaces is similar to that used for classes.
When reading projects from previous versions of Javelin any implements relationships created will be 
automatically converted.
6.1.5. Constant Data Members
Java supports constants in a simple and typesafe manner. Constant data members are variables (class data 
members) whose value can not change from its initialized value. Javelin now explicitly supports this 
feature. To mark variables in a class as constant simply check the Constant Value check box.
6.1.6. Additional Example projects
Introduction to OO project. This project runs through a quick introduction to OO programming.
Interfaces. This project describes Java interface and how they relate to normal classes.
6.1.7. For advanced users
6.1.7.1. Static Initializers
Java makes it possible to provide a method for each class that is executed whenever your applet or 
application starts. In Java this method is static and has no name or type. Javelin allows you to create a 
single static initializer for each class. To do this create a method with no characters in the name field and 
make the method static. Javelin allows only one static initializer per class. NOTE: see the import section 
in online help for more information regarding importing of static initializers.
6.1.7.2. Throws Statement
Version 4.49 now allows advanced users to make a throws statement after a methods argument list. Type 
in the names of the exceptions and separate them with ,. If this is left blank, the default, then no throw 
clause will be generated.
6.2. New Since Version 4.46
6.2.1. Customizable Color Scheme
Added color setup so that users can customize the design slate colors. The background color must always 
be a solid color (as opposed to a dithered color) so on a display with a 256 color palette the requested 
color may not always match the actual color used for the background. The display color for the other 
configurable items may be dithered. To access the feature Select  Options|Colors. The options are save in 
the Javelin.ini file under [System] section under the sc entry. sc stands for system colors.



6.2.2. Enhanced In Built Editor
6.2.2.1. New Menu
Added Menu to the inbuilt editor to do things like cut/copy/paste/delete find/find again/replace etc., Can 
be accessed via standard Windows hot keys:
Command
Hot Key

Cut
Ctrl+X

Copy
Ctrl+C

Paste
Ctrl+V

Delete
Del

Find
Ctrl+F

Find Again
F3

Replace
Ctrl+H

6.2.2.2. Position and Size
The position and size of Inbuilt editor is now stored whenever you change it so that it opens at the same 
position at which it was last opened.
6.2.2.3. Fixed Focus Problem
Fixed problem with lost focus when focus shiffts to and from another application when in inbuilt editor. 
This most often occured when using Ctrl+F1 in the in built editor to open a help file setup by the user.
7. Getting Started
7.1. Feature Overview
For a very quick start you can open \Javelin\features\feature.vcw and then \Javelin\features\toolbars.vcw. 
These contain quick start instructions.
7.2. Quick Start Tutorial
We recommend that you have a quick flick through the main sections of the help file (oodhelp.hlp) and 
then work through the getting started tutorial (tut.hlp). Double click on their names in the windows 
explorer to open them.
We will be providing examples of Javelin projects on our web site so make sure you make 
http://www.ozemail.com.au/~stepsoft a regular port of call as you cruise the infobarn.
Javelin projects (after serial number and password are obtained) can be saved at anytime using File|Save 
Project. In addition they are always saved when closed. It is good practise to save your work regularly to 
guard against power failures etc.,
8. Javelin Features
This is a list of features that apply to Javelin and which are not applicable to the Visual Classworks for 
C++.
8.1. Long Filenames
In Javelin classes are stored in a file named <classname>.java. This is how the Java compiler expects them. 
You are not restricted to short DOS filenames for the names of your classes or pathnames.
8.2. Code Generation
JAVA files (.java) are automatically created when you create a class in Javelin. As you make changes they 
are automatically updated to reflect the changes made from within Javelin. There is an option to force the 
code for selected classes or all classes to be generated. This is only ever needed if you have changed the 
copyright message in Project|Options or for some reason have deleted or lost one or more of your .java 
files. Regenerating will then recreate the files from scratch BUT with no code in the function bodies.
IMPORTANT: Javelin stores all design details, such as class names, method names and types etc., in its 
project file (.vcw). It does not, however, store the code in method bodies. This is stored in the .java files 
themselves. If you delete or lose a .java file then the source code for its methods will be lost. In this event 
you can regenerate to recreate skeletal code but method bodies will be empty.
8.3. Compiling Java Source From Javelin
Users can instruct Javelin to call the javac compiler directly. It will automatically attempt to compile all 
of the files for classes that have been modified since they were last compiled. Note: This option only 
works for Win95 and Win NT environments.
To run the compiler press the left most button in the tool bar. If you experience problems then ensure that 
your PATH environment variable (in autoexec.bat) includes the directory containing the javac compiler 
(would typically be c:\java\bin but it depends on where you installed the JDK)
A DOS window will appear and the javac compiler will compile those files that need to be compiled. If 
there were errors then Javelin will bring up notepad with a file containing the errors.
8.4. Running Your Java Programs
You can specify the command that is issued when the button second from the left is pressed. By default it 
will call the appletViewer executable passing it the name of the html file index.html. NT 3.5x users 
should read the Note below for how to tailor this feature for use under NT 3.5x. You can change this by 
adding an entry to the visclass.ini file under [Options] section called run. For example to change the run 
option so that you execute the java interpreter (java) instead you add or change the run option to:
run=java myclass.class
8.5. Implements
C++ does not have a concept of an interface. Java does. When creating relationships between classes you 
are asked to choose Inheritence or Implementation. Other relationships such as one-to-one, one-to-many 
are called association are supported in the professional version only.
An inheritence relationship is shown as a line with a solid arrow drawn from the subclass to the 
superclass. An implements interface relationship is drawn as a line with an open arrow drawn to the 
interface class from the class that is implementing the interface.
8.6. Associations
Javelin supports the creation of associations graphically. Associations are the one-to-one, one-to-many 
relationships that exist between entities in a system. These relationships are as important as inheritance 
and interface implementation relationships.
If you are a professional object oriented modeller then associations allow you to perform complete 
business modelling in the design slate.
9. Notes for NT 3.5x users
Due to slight incompatibilities between Windows 95 and Windows NT 3.5x users must make two simple 
changes in order to invoke the appletViewer from the tool. See 
http://www.ozemail.com.au/~stepsoft/javhints.html for more information. This problem dissappears under 
Windows NT 4.x.
10. Trademarks
JAVA is a registered trademark of Sun Microsystems. All other trademarks are the property of their 
respective owners. Javelin is a trade mark of Step Ahead Software Pty Ltd.



1



