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.
Subscribe to our Free semimonthly Newsletter to Get the Latest & Best FREE Computer IT Training! -You'll stay current with all the New Free Computer Training and Education sites we discover - Subscribe now because you'll have access to these great new sites a month before our web site visitors do, and with each issue you'll receive our 2 non-public links containing 97 Pages of Free Training with over 10,000 Free IT training and tutorial resources.
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.)
Six Online Java CBT Lessons (quizzes not available)
Writing Java Programs
Java Programming Basics
Using Objects and Arrays
Creating Java Applets
Graphics and User Events
Putting Your Skills to Work
Introductory Java Programming Tutorial
Object-Oriented Programming Books, Tools, FAQ, Links, etc. (previously Misc Java Notes) Similarities and Differences between Java and C++ Hello World Defining a Class The main() Method Using the System and PrintStream Classes Introduction to Graphical User Interfaces (GUI) Introduction to Applets Variables Operators Expressions Flow of Control Arrays and Strings Brief Introduction to Exceptions OOD -- The Painter's Canvas Problem Command-Line Arguments Standard Input and Output Streams Objects Classes Packages Access Control Instance Members, Class Members, Constructors, and Finalization More on Inheritance More on Interfaces String and StringBuffer Setting Program Attributes Using System Resources Handling Errors Using Exceptions
Data Structures Data Structures in Java: Part 1, Getting Started Data Structures in Java: Part 2, What Is a Collection? Data Structures in Java: Part 3, Purpose of Framework Interfaces Data Structures in Java: Part 4, Purpose of Implementations and Algorithms Data Structures in Java: Part 5, The Core Collection Interfaces Data Structures in Java: Part 6, Data Structures in Java: Part 6, Duplicate Elements, Ordered Collections, Sorted Collections, and Interface Specialization Data Structures in Java: Part 7, The Comparable Interface, Part 1 Data Structures in Java: Part 8, The Comparable Interface, Part 2 Data Structures in Java: Part 9, The Comparator Interface, Part 1 Data Structures in Java: Part 10, The Comparator Interface, Part 2 Data Structures in Java: Part 11, The Comparator Interface, Part 3 Data Structures in Java: Part 12, The Comparator Interface, Part 4 Data Structures in Java: Part 13, The Comparator Interface, Part 5 Data Structures in Java: Part 14, The Comparator Interface, Part 6 Data Structures in Java: Part 15, The toArray Method, Part 1 Data Structures in Java: Part 16, The toArray Method, Part 2
Intermediate Java Programming Tutorial
Threads of Control Input and Output Streams Stream Tokenizer Event Handling in JDK 1.0.2, The Event Class Event Handling in JDK 1.0.2, The handleEvent() Method Event Handling in JDK 1.0.2, Overriding Convenience Event Handlers Event Handling in JDK 1.0.2, Program-Generated Events Event Handling in JDK 1.0.2, The Event-Handling Hierarchy and the postEvent() Method Event Handling in JDK 1.0.2, Smart Components The AWT and Swing, A Preview Linked-Lists, Stacks, and Queues Ordered Linked-Lists Vectors, Hashtables, and Enumerations Callbacks - I Callbacks - II Callbacks - III Event Handling in JDK 1.1, A First Look, Delegation Event Model Swing and the Delegation Event Model Sharing a Listener Object Among Visual Components Low-level and Semantic Events Swing, New Event Types in Swing Requesting the Focus Swing, Understanding getContentPane() and other JFrame Layers Building a Custom Focus-Traversal Method Scrollbar (Adjustment) Event Handling Mouse Motion Events Using Abbreviated Inner Classes Container Events and More on Inner Classes Program-Generated Events and the AWTEventMulticaster Class Component Events Lightweight Components - See lesson 176 in the Advanced section for more complete coverage. Item Events Creating, Trapping, and Processing Custom Event Types Paint Events Handling Events in Extended Components without Listener Objects Introduction to the Toolkit Class, Peers, and Lightweight Components Posting Synthetic Events to the System Event Queue Text Events Component Impersonation Printing with AWT and Swing The AWT Package, An Overview The Swing Package, A Preview of Pluggable Look and Feel Placing Components in Containers, Absolute Coordinates BorderLayout FlowLayout GridLayout CardLayout
Advanced Java Programming Tutorial
Swing, Hidden Buttons with Icons, Icon Images, Borders, Tool Tips, Nested Buttons, and Other Fun Stuff The Container, Panel, Window, and Frame Classes The Button, Checkbox, Choice, and List Classes The TextField, TextArea, and Label Classes Scrollbar Class (see Lesson 090 and Lesson 110) The Dialog Class Ordinary Menus Checkbox Menus Popup Menus The Canvas Component Graphics - Getting Started Graphics and Colors, An Overview Graphics - The Utility Methods Graphics - Working with Shapes Graphics - Working with Fonts Graphics - Introduction to Images Graphics - Animation and Double Buffering Graphics - Overview of Advanced Image Processing Capabilities Lightweight Components, A Lightweight 3D Button Class Lightweight Components, Exercising the Lightweight 3D Button Class Lightweight Components, A Named Inner-Class Source/Listener Version of the Lightweight 3D Button Class. Lightweight Components, An Anonymous Inner-Class Source/Listener Version of the Lightweight 3D Button Class. Swing, Creating and Using Trees Swing, Custom Rendering of Tree Nodes Implementing the Model-View-Controller Paradigm using Observer and Observable Swing, Simplified Lists in Swing Swing, Understanding Component MVC Models Swing, Custom Rendering of JList Cells Swing, Custom List Selection Model for JList Objects Object Serialization, A First Look Object Serialization, Saving/Restoring a GUI Context with Inner Classes Reflection and the Method Class - I Reflection and the Method Class - II Reflection and the Method Class - III Using Reflection with Object Serialization and Retrieved Objects ... Java 2D Graphics, Nested Top-Level Classes and Interfaces Java 2D Graphics, The Point2D Class Java 2D Graphics, The Graphics2D Class Java 2D Graphics, Simple Affine Transforms Java 2D Graphics, The Shape Interface, Part 1 Java 2D Graphics, The Shape Interface, Part 2 Java 2D Graphics, Solid Color Fill Java 2D Graphics, Gradient Color Fill Java 2D Graphics, Texture Fill Java 2D Graphics, The Stroke Interface Java 2D Graphics, The Composite Interface and Transparency Java 2D Graphics, The Composite Interface, GradientPaint, and Transparency Java 2D Graphics, The Color Constructors and Transparency ... JavaBeans, An Overview JavaBeans, A Skeleton Bean Program JavaBeans, A Skeleton Bean in the Beanbox JavaBeans, Introspection JavaBeans, Properties of Beans, Simple and Indexed JavaBeans, Properties of Beans, Bound Properties JavaBeans, Properties of Beans, Constrained Properties ... Network Programming - General Information Network Programming - The InetAddress Class Network Programming - The URL Class and the URLEncoder Class Network Programming - The URLConnection Class Network Programming - Sockets Network Programming - Server Sockets Network Programming - Datagram Clients Network Programming - Datagram Servers Network Programming - Stubs, Skeletons, and Remote Objects ... RMI, Introduction to Remote Method Invocation RMI with Multiple Objects of the Same Type Having Multiple Methods RMI with Multiple Objects of Different Types Having Multiple Methods RMI, Passing and Returning Remote and Ordinary Objects ... CORBA, Introduction to Common Object Request Broker Architecture CORBA, Java IDL, Under the Hood CORBA, IDLs with Multiple Modules Having Interfaces with Multiple Operations CORBA, Using Stringified Object References in Java CORBA, Passing References to Remote Objects -- Callback Methods CORBA, Stringified Object References and FTP Servers CORBA, Passing Parameters to Remote Methods ... JDBC, Introduction to JDBC and Database Access Servlets, Introduction to Servlets Servlets, Forms, and Databases Servlets, Server-Side Includes Servlets, They Can Remember Servlets and the JDBC ResultSetMetaData Interface Servlets, Originating Email in Servlets Servlets, Session Tracking Using Hidden Fields Servlets, Session Tracking Using URL Rewriting Servlets, Session Tracking Using Cookies Servlets, Session Tracking Using the Session Tracking API Servlets, Session Tracking Using Basic Authentication ... Security, A Very Brief Introduction Security, Overview of Security in JDK 1.2 Security, Servlets, Using Basic Authentication Security, Introduction to Message Digests Security, Passphrase Protected Message Digests Security, Message Digest Streams Security, Introduction to Symmetric-Key Cryptography Security, Policy Files in JDK 1.2 Security, Introduction to Key Pairs and Digital Signatures Security, Digital Certificates ... JavaServer Pages, Introduction to JSP JavaServer Pages, Comments, Declaration, and Expressions JavaServer Pages, Scriptlets JavaServer Pages, The Include Directive JavaServer Pages, The Page Directive JavaServer Pages, <jsp.forward> JavaServer Pages and JavaBean Components, Part I JavaServer Pages and JavaBean Components, Part II JavaServer Pages and JavaBean Components, Part III ... Programming with HTML, XML, and SGML XML Document Processing using a SAX-Based XML Parser XML to Objects and Objects to XML using SAX XML Document Processing using the Document Object Model (DOM) XML, A Simple XML Editor using SAX ... Controlling the Visible Text in a Text Area on Startup Horizontal Text Scrolling Preserving Default Key Behavior Controlling Position in a GridLayout ... Swing from A to Z, Getting Started, Part 1 Swing from A to Z Getting Started, Part 2 Swing from A to Z: Some Simple Components Swing from A to Z: Properties, Events, and Methods Swing from A to Z: Transparency and Preferred Size Swing from A to Z: The border Property, (Part 1, Etched Border) Swing from A to Z: The Border Property (Part 2, BevelBorder and EmptyBorder) Swing from A to Z: The Border Property (Part 3, CompoundBorder) Swing from A to Z: The Border Property (Part 4, LineBorder, MatteBorder, and TitledBorder) Swing from A to Z: The Border Property (Part 5, Nested Compound Borders) Swing from A to Z: The Border Property, Part 6 (The BorderFactory Class) Swing from A to Z: Alignment Properties and BoxLayout, Part 1 Swing from A to Z: Alignment Properties and BoxLayout, Part 2 Swing from A to Z: Glue, Struts, and BoxLayout Swing from A to Z: Minimum, Maximum, and Preferred Sizes Swing from A to Z: Demystifying Glue and Struts, Part 1 Swing from A to Z: Demystifying Glue and Struts, Part 2 Swing from A to Z: Demystifying Glue and Struts, Part 3 Swing from A to Z: Analyzing Swing Components, Part 1, Concepts Swing from A to Z: Analyzing Swing Components, Part 2, GUI Setup Swing from A to Z: Analyzing Swing Components, Part 3, Construction Swing from A to Z: Analyzing Swing Components, Part 4, Inheritance Swing from A to Z: Analyzing Swing Components, Part 5, Interfaces ... Enterprise JavaBeans: Java 2 Platform, Enterprise Edition, Part 1 Enterprise JavaBeans: Java 2 Platform, Enterprise Edition, Part 2 Enterprise JavaBeans: Java 2 Platform, Enterprise Edition, Part 3 Enterprise JavaBeans: Getting Started with EJB, Part 1 Enterprise JavaBeans: Getting Started with EJB, Part 2 Enterprise JavaBeans: Getting Started with EJB, Part 3 Enterprise JavaBeans: Getting Started with EJB, Part 4 Enterprise JavaBeans: Getting Started with EJB, Part 5 Enterprise JavaBeans: Getting Started with EJB, Part 6 Enterprise JavaBeans: Getting Started with EJB, Part 7 Enterprise JavaBeans: Middle-Tier Servers and J2EE Enterprise JavaBeans: Helper Classes ... Fun with Java: Sprite Animation, Part 1 Fun with Java: Sprite Animation, Part 2 Fun with Java: Sprite Animation, Part 3 Fun with Java: Sprite Animation, Part 4 Fun with Java: Sprite Animation, Part 5
Test Your Java Knowledge
Fundamentals, Part 1 Fundamentals, Part 2 Fundamentals, Part 3 Fundamentals, Part 4 Fundamentals, Part 5 Fundamentals, Part 6 Using Operators and Making Assignments, Part 1 Using Operators and Making Assignments, Part 2 Using Operators and Making Assignments, Part 3 Using Operators and Making Assignments, Part 4 Using Operators and Making Assignments, Part 5 Using Operators and Making Assignments, Part 6 Using Modifiers, Part 1 Using Modifiers, Part 2
Java 101
Learn Java from the ground up A new column starts for Java beginners who want to become true Java developers.
Learn how to store data in objects The journey from Java wanna-be to Java developer continues.
Class action Expand your knowledge of Java-class creation.
Applications, applets, and hybrids Java 101 charts a new course, and explores applications, applets, and hybrids.
Non-object-oriented language basics, Part 1 Explore comments, identifiers, data types, literals, and variables.
Non-object-oriented language basics, Part 2 Delve into operators and expressions.
Non-object-oriented language basics, Part 3 Learn statements and construct interesting programs.
The ins and outs of standard input/output Learn the basics of standard input, standard output, and standard error.
Object-oriented language basics, Part 1 Learn how to declare classes and create objects.
Object-oriented language basics, Part 2 Declare and access fields and methods.
Object-oriented language basics, Part 3 Composition: Build objects from other objects.
Object-oriented language basics, Part 4 Inheritance: Build objects in layers.
Object-oriented language basics, Part 5 The root of all classes.
Best Java Tutorials from Crossroads
Here are the best Java Tutorials from Crossroads, the ACM international student magazine:
A Practical Crash Course in Java1.1+ Programming and Technology: Part I
A Practical Crash Course in Java1.1+ Programming and Technology: Part II
A Simple SMTP Framework for Java
Java AWT Layout Management 101
Creating a Simple 3D Universe with Java3D
Creating a Simple, Multithreaded Chat System with Java
Java I/O and Compression
Make Your GUI Swing
Distributed Computation with Java Remote Method Invocation
Using the Java Document Generator
JDBC - Java Database Connectivity
Five Great Free Java Books
The Java Language Specification - This book gives a complete specification of the syntax and semantics of the language. The author intends that the behavior of every language construct is specified here, so that all implementations will accept the same programs.
Writing Enterprise Applications for the Java 2 Platform Enterprise Edition - Introduces you to the APIs, tools, and services provided in the JavaTM 2 Enterprise Edition (J2EE) Reference Implementation.
Advanced Programming for the Java 2 Platform - Very good tutorial with a focus on distributed application development. Chapter 2 (Auction House Application) shows how to build EJBs. Chapter 3 (Data and Transaction Management) details about using Transactions and JDBC in EJBs.
Mastering Enterprise Java Beans and the Java 2 Platform, Enterprise Edition - This compressed, zip file is a Free electronic download for viewing Ed Roman's book, 'Mastering Enterprise Java Beans'. This book costs almost $50.00 at the bookstores, but is now available for free. This is a must have book for those learning and understanding Enterprise Java Beans.
Developer's Guide to Understanding EJB - This guide is a primer for developers who want a technical introduction to EJB technology. Get a detailed overview of the EJB architecture and API, and learn how the various components fit together.
EJB (Enterprise Java Beans) Tutorials
Professional EJB by Daniel O'Connor and Dave Young:
Chapter 5, "The EJB 2.0 Entity Model," provides a detailed overview of the changes to entity beans in the EJB 2.0 specification, including abstract methods, relationships, EJB QL, and a comparison with the old 1.1 model.
Chapter 9, "Transactions and EJB," develops a thorough understanding of transactions, transactional systems, and how to effectively use them to improve the scalability, reliability and dependability of EJB-based applications.
Applying Enterprise JavaBeans: Component-Based Development for the J2EE Platform by Vlada Matena and Beth Stearns:
Chapter 1, "Advantages of the Enterprise JavaBeans Architecture," discusses different enterprise architectures, including the state-of-the-art EJB and J2EETM architectures, and how they have evolved along with the growth of the Web. Chapter 8, "Understanding Transactions," describes the EJB architecture approach to transaction demarcation.
Professional EJB by Daniel O'Connor and Dave Young:
Chapter 5, "The EJB 2.0 Entity Model," provides a detailed overview of the changes to entity beans in the EJB 2.0 specification, including abstract methods, relationships, EJB QL, and a comparison with the old 1.1 model.
Chapter 9, "Transactions and EJB," develops a thorough understanding of transactions, transactional systems, and how to effectively use them to improve the scalability, reliability and dependability of EJB-based applications.
Applying Enterprise JavaBeans: Component-Based Development for the J2EE Platform by Vlada Matena and Beth Stearns:
Chapter 1, "Advantages of the Enterprise JavaBeans Architecture," discusses different enterprise architectures, including the state-of-the-art EJB and J2EETM architectures, and how they have evolved along with the growth of the Web. Chapter 8, "Understanding Transactions," describes the EJB architecture approach to transaction demarcation.