Skip to main content

By clicking Submit, you agree to the developerWorks terms of use.

The first time you sign into developerWorks, a profile is created for you. Select information in your developerWorks profile is displayed to the public, but you may edit the information at any time. Your first name, last name (unless you choose to hide them), and display name will accompany the content that you post.

All information submitted is secure.

  • Close [x]

The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerworks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

By clicking Submit, you agree to the developerWorks terms of use.

All information submitted is secure.

  • Close [x]

Intermediate Java programming

Roy W. Miller (roy@roywmiller.com), Programmer, Independent
Roy Miller is an independent software development coach, programmer, and author. He began his career at Andersen Consulting (now Accenture), and most recently spent three years using Java professionally at RoleModel Software, Inc. in Holly Springs, NC. He has developed software, managed teams, and coached other programmers at clients ranging from two-person start-ups to Fortune 50 companies.

Summary:  The Java™ language provides most of what professional programmers expect to see in a language, and even in an object-oriented language. Beyond the basics, though, the Java language provides some useful tools for creating sophisticated programs. This tutorial will introduce you to some of these more advanced Java language features commonly seen on typical Java technology development projects.

Date:  13 Jan 2005
Level:  Introductory PDF:  A4 and Letter (159 KB | 51 pages)Get Adobe® Reader®

Activity:  20129 views
Comments:  

Before you start

About this tutorial

This tutorial introduces you to capabilities of the Java language that are more sophisticated than those covered in the "Introduction to Java programming" tutorial (see Resources for a link to this and other material referenced in this tutorial). In order to get to the most out of this tutorial, you should have completed that introductory tutorial, or be familiar with the concepts covered in it.

The Java language provides a vast set of tools that can help a programmer accomplish almost any task. In this tutorial, we'll cover a few of the more advanced tools that are commonly used on Java development projects, including the following:

  • Inheritance and abstraction
  • Interfaces
  • Nested classes
  • Regular expressions
  • Collections
  • Dates
  • I/O

Prerequisites

The content of this tutorial is geared toward moderately experienced Java programmers who might not be familiar with some of the more involved features of the language. It assumes a general knowledge of downloading and installing software, and a general knowledge of object-oriented programming (OOP) with the Java language. You might not use the more advanced Java language features we'll talk about here in every application -- in fact, you probably shouldn't -- but it's wise for a professional programmer to know about them and be able to use them when appropriate.

In addition to familiarity with the concepts covered in the "Introduction to Java programming" tutorial see Resources), you'll need to have the following installed to run the examples or sample code in this tutorial:

  • JDK 1.4.2 or higher (5.0 recommended)
  • The Eclipse IDE

All code examples in this tutorial have been tested with JDK 5.0 on the Windows XP platform, but should work without modification using JDK 1.4.x. You can download source code for the tutorial from Resources. It's contained in intermediate.jar, which you can import into your Eclipse workspace.

The sample JAR file does not necessarily contain the code for every example in this tutorial in its final form. Instead, it contains the core of what we'll cover, minus some of the iterative modifications that we'll apply to the code as we progress through the article. Modifying the core to explore the language features we'll cover in this tutorial is left as an exercise for you.

1 of 11 | Next

Comments



Help: Update or add to My dW interests

What's this?

This little timesaver lets you update your My developerWorks profile with just one click! The general subject of this content (AIX and UNIX, Information Management, Lotus, Rational, Tivoli, WebSphere, Java, Linux, Open source, SOA and Web services, Web development, or XML) will be added to the interests section of your profile, if it's not there already. You only need to be logged in to My developerWorks.

And what's the point of adding your interests to your profile? That's how you find other users with the same interests as yours, and see what they're reading and contributing to the community. Your interests also help us recommend relevant developerWorks content to you.

View your My developerWorks profile

Return from help

Help: Remove from My dW interests

What's this?

Removing this interest does not alter your profile, but rather removes this piece of content from a list of all content for which you've indicated interest. In a future enhancement to My developerWorks, you'll be able to see a record of that content.

View your My developerWorks profile

Return from help

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=Java technology
ArticleID=131623
TutorialTitle=Intermediate Java programming
publish-date=01132005
author1-email=roy@roywmiller.com
author1-email-cc=

Tags

Help
Use the search field to find all types of content in My developerWorks with that tag.

Use the slider bar to see more or fewer tags.

Popular tags shows the top tags for this particular content zone (for example, Java technology, Linux, WebSphere).

My tags shows your tags for this particular content zone (for example, Java technology, Linux, WebSphere).

Use the search field to find all types of content in My developerWorks with that tag. Popular tags shows the top tags for this particular content zone (for example, Java technology, Linux, WebSphere). My tags shows your tags for this particular content zone (for example, Java technology, Linux, WebSphere).

Special offers