Be sure to check out our new Blogs and discover all the new Free Training!

Free Computer Training Free Computer Courses



Computer Education, Training, and Tutorial Resources

Learn programming for Free and how to develop and write computer programs and IT applications. Get Free knowledge, information, references, and resources about computers now. Many Free training courses, tutorials, books, training guides, tips, articles, and helps are available to you.

For help finding what you need go to Navigation by Topic to Free Training or use pop-up.

Follow us on Our Twitter page!,, and Google Search

I.T. Education & Training:

Home Page

Free Computer Training & Courses

Free Computer Books

Free Tutorials, Guides, Support & Help

Learn IT & Development

Free University Course Websites

Best FREE Online Computer IT Courses

Lower Fee Distance Learning Sites

Higher Fee Distance Learning Sites

Link and Resource Sites

Free Certification Exam Study Guides

Free IT Training Tutorials

Free IT Training Downloads

Monthly Newsletter: New Free Sites

Free Trade Publications

IT Sites Worth Mentioning

Free Site of the Month

Best Course & Degree Locators

Free Desktop & Office Tutorials


Additional Site Content:

Member Info & Sign Up

Member Login's Computer Open Web Directory

IT Certification Counselor and Complete List

Financial Aid Resources's IT Career Center

Online IT Publications

IT Associations & Organizations

The Latest Technology News

IT Stock Quotes and News

Online Games

Music and Movies

Travel Reservations, Flight Schedules & Tracking

The Best of the Web

Best Developer Books at

How You Can Support Our IT Training Mission

Community Content:
Use Our Forum to Ask Questions & Give Answers

Enter Our Chat Room

Our Free Links Page

Free Classified Ads

Create and Send a Greeting Card

Our Cartoons and Jokes

Free Email at ZapZone

Take Our Survey


Introduction to Programming Using Java

Click Here to Sign-Up and Become a Member of

This training is available on our members site only. As a member, all of the training and tutorials are available to you. We will be adding more training materials here in the future. You can join now for only USD $15 total for 2 months, $25.00 for 4 months, $34.00 for 6 months, or $59.00 for 1 year. (Please note the local links to member training content do not work on this page.)

Up 1 LevelBack to Member Sign-up & Information Home Page


Introduction to Programming Using Java

This is an on-line textbook on introductory programming, which uses Java as the language of instruction. This text has more than enough material for a one-semester course, and it is also suitable for individuals who want to learn programming on their own. This is the third edition of the text. It covers more material and has more examples than the second edition. It also adds end-of-chapter quizzes and solved programming exercises. You can download for free the Java Software Development Kit (SDK) version 1.1 or later from Sun. For help with setting up and running the Java SDK look at this page (Essentials of the Java Programming Language, Lesson 1: Compiling and Running A Simple Program), this page (Java 2 SDK Standard Edition Documentation), and also here.


Preface to the Second Edition

Chapter 1: Overview: The Mental Landscape

  • Section 1: The Fetch-and-Execute Cycle: Machine Language
  • Section 2: Asynchronous Events: Polling Loops and Interrupts
  • Section 3: The Java Virtual Machine
  • Section 4: Fundamental Building Blocks of Programs
  • Section 5: Objects and Object-oriented Programming
  • Section 6: The Modern User Interface
  • Section 7: The Internet and World-Wide Web
  • Quiz on this Chapter

Chapter 2: Programming in the Small I: Names and Things

  • Section 1: The Basic Java Application
  • Section 2: Variables and the Primitive Types
  • Section 3: Strings, Objects, and Subroutines
  • Section 4: Text Input and Output
  • Section 5: Details of Expressions
  • Programming Exercises
  • Quiz on this Chapter

Chapter 3: Programming in the Small II: Control

  • Section 1: Blocks, Loops, and Branches
  • Section 2: Algorithm Development
  • Section 3: The while and do..while Statements
  • Section 4: The for Statement
  • Section 5: The if Statement
  • Section 6: The switch Statement
  • Section 7: Introduction to Applets and Graphics
  • Programming Exercises
  • Quiz on this Chapter

Chapter 4: Programming in the Large I: Subroutines

  • Section 1: Black Boxes
  • Section 2: Static Subroutines and Static Variables
  • Section 3: Parameters
  • Section 4: Return Values
  • Section 5: Toolboxes, API's, and Packages
  • Section 6: More on Program Design
  • Section 7: The Truth about Declarations
  • Programming Exercises
  • Quiz on this Chapter

Chapter 5: Programming in the Large II: Objects and Classes

  • Section 1: Objects, Instance Variables, and Instance Methods
  • Section 2: Constructors and Object Initialization
  • Section 3: Programming with Objects
  • Section 4: Inheritance, Polymorphism, and Abstract Classes
  • Section 5: More Details of Classes
  • Programming Exercises
  • Quiz on this Chapter

Chapter 6: Applets, HTML, and GUI's

  • Section 1: The Basic Java Applet
  • Section 2: HTML Basics and the Web
  • Section 3: Graphics and the Paint Method
  • Section 4: Mouse Events
  • Section 5: Keyboard Events
  • Section 6: Introduction to Layouts and Components
  • Section 7: Looking Back: The Java 1.0 Event Model
  • Programming Exercises
  • Quiz on this Chapter

Chapter 7: Advanced GUI Programming

  • Section 1: More about Graphics
  • Section 2: More about Layouts and Components
  • Section 3: Standard Components and Their Events
  • Section 4: Programming with Components
  • Section 5: Threads, Synchronization, and Animation
  • Section 6: Nested Classes and Adapter Classes
  • Section 7: Frames and Dialogs
  • Section 8: Looking Forward: Swing and Java 2.0
  • Programming Exercises
  • Quiz on this Chapter

Chapter 8: Arrays

  • Section 1: Creating and Using Arrays
  • Section 2: Programming with Arrays
  • Section 3: Vectors and Dynamic Arrays
  • Section 4: Searching and Sorting
  • Section 5: Multi-Dimensional Arrays
  • Programming Exercises
  • Quiz on this Chapter

Chapter 9: Correctness and Robustness

  • Section 1: Introduction to Correctness and Robustness
  • Section 2: Writing Correct Programs
  • Section 3: Exceptions and the try...catch Statement
  • Section 4: Programming with Exceptions
  • Programming Exercises
  • Quiz on this Chapter

Chapter 10: Advanced Input/Output

  • Section 1: Streams, Readers, and Writers
  • Section 2: Files
  • Section 3: Programming with Files
  • Section 4: Networking
  • Section 5: Programming Networked Applications
  • Programming Exercises
  • Quiz on this Chapter

Chapter 11: Linked Data Structures and Recursion

  • Section 1: Recursion
  • Section 2: Linking Objects
  • Section 3: Stacks and Queues
  • Section 4: Binary Trees
  • Section 5: A Simple Recursive-descent Parser
  • Programming Exercises
  • Quiz on this Chapter

Appendix 1: From Java to C++

  • Section 1: C++ Programming Fundamentals
  • Section 2: Pointers and Arrays in C++
  • Section 3: Classes and Objects in C++

Appendix 2: Some Notes on Java Programming Environments

Appendix 3: Source code for all examples in the text

News and Errata




 Return to Top
 Back to previous page



Please Suggest a Computer Education, Training, or Tutorial Web Site Link for this Site

If you know a good Computer Education, Training, or Tutorial web site that is not on this page please fill this form out with the address of the web site and we will post it. This will help everyone who is seeking to learn more about computers.

Please enter the name of the site, its address, and a short description of its contents. Thank you.

Name of Web Site:

Address of Web Site:

Short Description:

Clicking the Submit Computer Education Web Site button will open a new browser window, when finished you can close that window.

Please Help Support our Computer Education & Training Web Site

Please email questions or comments to Webmaster:

All pages on this web site are © 2012 by DeepSearcher Inc