Johannes Wallroth is a web designer and self taught programmer,
learning both programming and English from books. His site,
www.programming.de, has
grown in popularity since it's inception in 1999. Johannes
works with www.medical-internet.com and has lived in Berlin
since 1988
|
Java By Example
Johannes Wallroth
In this tutorial I will try to give you a series of fairly simple
examples in order to enable you to get a grasp of the
possibilities and the syntax of the Java language. We are going
to use version 1.0 of the language, because I think it is much
easier to learn than the later versions, especially without prior
knowledge of C++, and you can easily switch to newer versions,
once you have learned the basics. I'm going to show only those
parts that are most common for games and graphical
applets, not the controls, like buttons, checkboxes, and so
on.
To explore the possibilities further, I strongly recommend using
the API documentation that I have packed together with the
Java
Development Kit.
This tutorial requires at least a little
knowledge of some programming language, so you understand the
basic concepts of programming, like varibles, control structures
and so on. If you are an absolute beginner, you will probably
have to look for additional tutorials on the web or in books,
though I will try to cover most of the basics as well.
Please read also the comments inside the sourcecodes (lines
beginning with // are comments!). Don't get confused
if you don't know what some lines of code mean, just try to
follow the examples and make changes to them, to get a feeling of
what they are doing. In due time, everything will come naturally
to you. Most of my example applets are 300 x 300 pixels in size,
but you can easily change this, by editing the code inside the
HTML-file of the project. Just look for the line "APPLET
CODE=XYZ.class WIDTH=300 HEIGHT=300" and change the width
and height parameters. You will have to change the drawing code
also, to fill the whole applet.
|
If you want to recompile any of my applets, please make sure your main class (only class in the simple applets) has the same name as the one you have entered in the project settings! If you get an error message pointing to the class name, you must change the name of the class to the one you have entered in the project settings.
|
Click here to download all the Java source files of the following examples.
Table of Contents
Section One: Java Basics
Basic Graphics Functions
Simple Methods and Basic Data Types
If, Else and Switch: Basic Control Structures
Section Two: Operators and Methods
Introducing the Operators
Methods With and Without A Return Value
Using Methods and Basic Mouse Functions
Section Three: Fonts and Graphics
Fonts, Random Numbers and Timers
Flicker Free Graphics, .GIF and .JPEG Display
Animation With Gif Pictures, Sprite Animation
Section Four: Functions and Arrays
Loops, Advanced Color Functions
Random Colors and Arrays
Digital Clocks, HTML Page Parameters
Section Five: Objects and Classes
Introducing Classes and Objects
Using the Vector Class
Section Six: Input Devices
Using Mousemove and Mousedrag
Keyboard Commands and Playing Sound
Detecting Collisions and Intersections
A Bouncing Balls Applet
Section Seven: Letters - Words - Lines - Shuffle
Fun With Letters and Words
Rotating Lines and Polygons
Sorting and Shuffling
New on the Java Boutique:
New Review:
Time Management Made Easy with the Quartz Enterprise Job Scheduler
Why not just use the Java timer API? This open source scheduling
API boasts simplicity, ease-of-integration, a well-rounded feature
set, and it's free!
New Applet:
Reverse Complement
Reverse Complement is a simple applet that converts DNA or RNA
sequences into three useful formats.
Elsewhere on internet.com:
WebDeveloper Java
Lots of Java information on webdeveloper.com
WDVL Java
Thorough Java resource at the Web Developer's Virtual Library.
ScriptSearch Java
Hundreds of free Java code files to download.
jGuru: Your View of the Java Universe
Customizable portal with online training, FAQs, regular news updates, and tutorials.