Java Programming
I have started to learn the Java programming language to compliment me using the Oracle database, a number of projects at work have been Java related so i wanted to know the language better and get a good understanding which will also help to become a better Oracle DBA.
I plan on taking the Java Certified exam in the future, but in the mean time I wanted a web site that contained the basics fundamentals of the language, as I do not use Java day to day I often forget some of the syntax.
I have also started to learn how to program games in the Java language as I find this a very interesting way to learn a new programming language, I am a very keen player of games (PC games) and always wanted to know how it is possible to create games to such a high level. I have read a few books listed below to start me on my journey and I highly recommend that you should purchase these books as they contain far more information than this web site contains.
Please feel free to email me any constructive criticism you have with the site as any additional Java knowledge or mistakes that I have made would be most welcomed.
The first 12 headings below are required for the Java 1.4 Certification exam.
Introduction to JavaIntroduction | |
History of Java | |
Structured Programming | |
Java Environment - (editor, compiler, class loader, bytecode verifier and interpreter) |
Java Programming Introduction | |
Java Application Programming | |
Java Applet Programming |
Declarations and Modifiers (private, protected, public, static, static block, etc) | |
Declaration Rules (package, import, public class, main method) | |
Interface Implementation |
Branching - (if, if-else and switch) | |
Loops - (while, do-while, for) | |
Break and Continue | |
Labeled and Unlabeled Statements | |
Recursion |
Introduction | |
Catching - (try and catch) | |
Finally | |
Propagation | |
Handling - (defining, hierarcy, handling, matching declaration and rethrowing) | |
Assertions |
Encapsulation | |
Overrriden Methods | |
Overloaded Methods | |
Constructors and Instantiation | |
this Reference - (this) | |
Legal Return Types |
String Class | |
StringBuffer Class | |
StringTokenizer | |
Math Class | |
Wrapper Classes | |
Using equals() |
Overriding equals() | |
Overriding hashCode() | |
Collections - (Map, Set and List implementations) | |
Garbage Collection - (gc(), finalize) |
Inner Classes | |
Method-Local Inner Class | |
Anonymous Inner Class | |
Static Nested Classes |
Defining, Instantiating and Starting | |
Preventing Thread Execution | |
Synchronizing Code | |
Thread Interaction |
Files and Streams | |
Sequential File Access - (creating, reading, updating) | |
Random File Access - (creating, reading, writing, reading sequentially) | |
File Class |
Graphics Contexts and Graphics Objects | |
Color Control | |
Font Control | |
Drawing Lines, Rectangles and Ovals | |
Drawing Arcs | |
Drawing Polygons and Polylines | |
The Java2D API (drawing 2D Shapes) |
Java Media Framework | |
Loading, Displaying and Scaling images | |
Loading and Playing audio clips | |
The Java Media Player | |
Animating a Series of Images | |
Customizing Applets via the HTML param tag | |
Image Maps |
Defining and Implementing the Remote Interface | |
Define the Client | |
Compile and Execute the Server and the Client (rmiregistry) |
Manipulating URLs | |
Reading a file on a Web Server | |
Establishing a Simple Server (using Stream Sockets) | |
Establishing a Simple Client (using Stream Sockets) | |
Connectionless Client/Server Interaction with Datagrams | |
Security and the Network |
Self-Reference Classes | |
Dynamic Memeory Allocation | |
Linked Lists | |
Stacks | |
Queues | |
Trees |
Vector Class and Enumeration Interface | |
Stack Class | |
Dictionary Class | |
Hashtable Class | |
Properties Class | |
Random Class |
Bit Manipulation and the Bitwise Operators | |
BitSet Class |
Java 2 Certified Programmer |
|
Java 2 Sun Certified Programmer and Developer | A well presented book to get you through the exam |
Other Java books |
|
Java How to Program - Deitel and Deitel | This is really the only book you need if you are a new Java programmer, this book covers a lot of ground and many colleges and universities use this book. |
Java in a Nutshell 5th Edition - David Flanagan | The ideal reference book to have on your desktop |
Java Cookbook - Ian F. Darwin | Another book to have on the desktop, quick handy recipes. |
Java Threads - Scott Oaks & Henry Wong | A good examination of Threads, although this was the older version it was still a good read. |
Beginning Java Objects from concepts to Code | I really enjoyed this book, a good explanation on how to start and convert a project into a Java program, helped with some projects i was working on. |
Java Gaming Books |
|
Developing Games in Java - David Brackeen | Out of all the books i have this was the best read, however you need to understand Java before attempting this book. |
Advanced Java Game Programming - David Wallace | Currently Reading this book . |
Killer Game Programming in Java - Andrew Davison | Next book on my list to read. |