Java programming using Microsoft Visual J++ 6.0

Topic-level outline

             Days:           5

Prerequisites:           Basic knowledge of personal computers

             Unit 1 :           Programming, Java, and Microsoft Visual J++

           Topic A: 0   Overview of programming and Java

           A-1:           Introducing programming elements

           A-2:           Understanding object-oriented programming

           A-3:           Understanding the Java programming language

           A-4:           Understanding Microsoft Visual J++

           Topic B: 0   Microsoft Visual J++ development environment

           B-1:           Creating a new project in Visual J++

           B-2:           Working with window properties

           B-3:           Working with the Project Explorer window

           B-4:           Working with the Forms Designer window

           B-5:           Working with the Properties window

           Topic C: 0   Visual J++ Help

           C-1:           Using the InfoViewer to locate and create a bookmark for a topic

           Topic D: 0   Working with files, projects, and solutions

             D-1:             Adding a file to a project

             D-2:             Adding projects to a solution

             D-3:             Renaming a solution

             D-4:             Saving a solution and an individual file

             D-5:             Closing a solution and an individual file

             D-6:             Opening an existing solution and project

             D-7:             Creating a new file and then opening it

             D-8:             Exiting Visual J++

             Unit 2 :           First program using Java

           Topic A: 0   Creating a program

           A-1:           Discussing Java structure

           A-2:           Discussing class-naming conventions

           A-3:           Discussing Java keywords

           A-4:           Writing a Java program

           A-5:           Adding comments to a program

           A-6:           Running a program using the JView

           A-7:           Modifying a program

           Topic B: 0   Using data

             B-1:             Understanding variables and constants

             B-2:             Adding the int data type

             B-3:             Adding two more variables

             B-4:             Adding arithmetic operators

             B-5:             Adding boolean variables

             B-6:             Adding floating-point variables

             B-7:             Understanding numeric data conversion and the char data type

             Unit 3 :           Using methods, classes, and objects

           Topic A: 0   Programming using methods

           A-1:           Creating a method with no argument

           A-2:           Calling a method from another class

           A-3:           Creating a method using a single argument

           A-4:           Creating a method using multiple arguments

           A-5:           Creating a method that returns a value

           Topic B: 0   Using classes

             B-1:             Understanding classes

             B-2:             Working with the Class Outline window

             B-3:             Creating a class

             B-4:             Adding an instance method to a class

             B-5:             Passing an integer argument

             B-6:             Instantiating objects and adding the calls to the methods

             B-7:             Adding a constructor to a class

             Unit 4 :           Advanced object concepts

           Topic A: 0   Advanced class features

           A-1:           Demonstrating block scope

           A-2:           Overloading a method

           A-3:           Discussing ambiguity

           A-4:           Passing an argument to a constructor

           A-5:           Overloading a constructor

           Topic B: 0   Using methods

             B-1:             Using the this reference

             B-2:             Working with constants

             B-3:             Using Math class methods

             B-4:             Using the Date class

             B-5:             Using the getTime() method

             B-6:             Using the Object Browser

             Unit 5 :           Using input, selection, and repetition techniques in programming

           Topic A: 0   Input and decision making

           A-1:           Writing a program to accept input

           A-2:           Discussing flowcharts

           A-3:           Using the if structure

           A-4:           Using the if…else structure

           A-5:           Using compound statements

           A-6:           Using the nested if…else structure

           Topic B: 0   Special operators, the switch statement, and the precedence of operators

           B-1:           Using improved OR logic

           B-2:           Using the switch statement

           B-3:           Using the conditional operator and the NOT operator

           B-4:           Discussing precedence of operators

           Topic C: 0   Looping and shortcut arithmetic

             C-1:             Using the while loop

             C-2:             Introducing shortcut arithmetic operators

             C-3:             Discussing the for loop

             C-4:             Discussing the do…while loop

             C-5:             Using nested loops

             C-6:             Using nested loop to print even divisors

             Unit 6 :           Arrays and strings

           Topic A: 0   Introducing arrays

           A-1:           Declaring an array

           A-2:           Initializing an array

           A-3:           Using subscripts with an array

           A-4:           Creating an array of objects

           A-5:           Searching an array for an exact match

           A-6:           Validating data in an array

           A-7:           Passing an array to a method

           A-8:           Using the array length field

           Topic B: 0   Introducing Strings

           B-1:           Declaring a string

           B-2:           Comparing Strings

           B-3:           Using other String methods

           B-4:           Converting Strings to numbers

           Topic C: 0   Using advanced array techniques

             C-1:             Sorting a character array

             C-2:             Sorting multiple array elements by using bubble sort

             C-3:             Using a two-dimensional array

             Unit 7 :           Applets

           Topic A: 0   Applet and HTML basics

           A-1:           Understanding applets and HTML

           A-2:           Using the HTML Editor

           A-3:           Writing a simple applet by using a Label

           A-4:           Running an applet by using the QuickView

           A-5:           Changing a Label’s font

           A-6:           Adding a TextField and a Button to an applet

           Topic B: 0   Event-driven programming

           B-1:           Discussing event-driven programming

           B-2:           Adding functionality to an applet

           B-3:           Customizing the output of an applet

           Topic C: 0   Advanced features of applets

             C-1:             Using the setLocation() method

             C-2:             Using the setEnabled() method

             C-3:             Creating an interactive applet

             C-4:             Creating the actionPerformed() method for an interactive applet

             Unit 8 :           Graphics

           Topic A: 0   Introduction to graphics

           A-1:           Using the paint() and repaint() methods

           A-2:           Using the drawString() method

           A-3:           Using the setFont() and setColor() methods

           A-4:           Drawing a Graphics object

           A-5:           Working with lines and geometric shapes

           Topic B: 0   Advanced Graphics methods

                  B-1:                  Discussing the drawArc() and drawRect() methods

                  B-2:                  Copying an area

                  B-3:   Adding effects to an applet

           Topic C: 0   Working with Font() methods

             C-1:             Using Font methods

             C-2:             Demonstrating FontMetrics methods

             C-3:             Adding a border to a string

             Unit 9 :           Introduction to inheritance

           Topic A: 0   Using inheritance

           A-1:           Discussing inheritance

           A-2:           Demonstrating inheritance by creating a simple class

           A-3:           Creating a class that extends from another class

           A-4:           Modifying the inherited class

           A-5:           Overriding superclass methods

           Topic B: 0   Using superclasses and subclasses

           B-1:           Working with superclasses that have constructors

           B-2:           Adding a superclass constructor

           B-3:           Using superclass constructors that require arguments

           B-4:           Accessing superclass methods from a subclass

           B-5:           Creating a superclass with a protected field

           B-6:           Using methods that cannot be overridden

           Unit 10 :           Advanced inheritance concepts

           Topic A: 0   Discussing abstract classes and dynamic method binding

           A-1:           Creating an abstract class

           A-2:           Extending an abstract class

           A-3:           Writing a program that instantiates objects of child classes

           A-4:           Creating an array of subclass objects

           Topic B: 0   Discussing software design and interfaces

           B-1:           Discussing the Object class and its methods

 

           B-2:           Adding an equals() method to a class

           B-3:           Using inheritance to achieve good software design

           B-4:           Creating and using an interface

           Unit 11 :           Understanding the Abstract Windows Toolkit (AWT)

           Topic A: 0   Applying inheritance to the Frame class

           A-1:           Creating a Frame object

           A-2:           Testing the Frame object

           A-3:           Creating a frame that closes

           A-4:           Using an Adapter

           A-5:           Creating a frame that can be resized

           A-6:           Using container methods

           Topic B: 0   Using components

           B-1:           Using component methods

           B-2:           Using a CheckBox

           B-3:           Using the CheckboxGroup class

           B-4:           Using the Choice class

           B-5:           Creating a list

           B-6:           Creating a list that accepts multiple selections

           Unit 12 :           Using layout managers and the event model

           Topic A: 0   Using layout managers

           A-1:           Using BorderLayout

           A-2:           Using FlowLayout

           A-3:           Using GridLayout

           A-4:           Using panels

           Topic B: 0   Using events

           B-1:           Understanding events

           B-2:           Implementing event handlers

           B-3:           Using AWTEvent class methods

           B-4:           Using event methods from higher in the inheritance hierarchy

           B-5:           Using mouse events

           Unit 13 :           Exception handling

           Topic A: 0   Introduction to exceptions

           A-1:           Demonstrating exception occurence

           A-2:           Catching an ArithmeticException

           A-3:           Using the exception getMessage() method

           A-4:           Throwing and catching multiple exceptions

           A-5:           Using the finally block

           A-6:           Discussing limitations of traditional error handling

           Topic B: 0   Advanced exception handling

           B-1:           Specifying the exceptions a method can throw

           B-2:           Creating classes that throw exceptions but can’t catch them

           B-3:           Creating a class that catches exceptions thrown by another class

           B-4:           Handling exceptions uniquely with each catch

           B-5:           Creating an exception

           Topic C: 0   Understanding debugging

           C-1:           Discussing debugging

           C-2:           Demonstrating the Step commands

           C-3:           Working with breakpoints

           C-4:           Discussing different debug windows

           C-5:           Using the printStackTrace() method

          

           Unit 14 :           File input and output

           Topic A: 0   Introduction to the File class

           A-1:           Using the File class

           A-2:           Checking for a nonexistent file

           A-3:           Comparing two files

           A-4:           Discussing data file organization and streams

           A-5:           Using streams

           A-6:           Writing to a file

           A-7:           Reading from a file

           Topic B: 0   Advanced file techniques

           B-1:           Writing formatted file data

           B-2:           Reading formatted file data

           B-3:           Creating a random access file

           Unit 15 :           Multithreading and animation

           Topic A: 0   Introducing multithreading

           A-1:           Discussing multithreading

           A-2:           Using the Thread class

           A-3:           Understanding a thread’s life cycle

           A-4:           Using the sleep() method

           A-5:           Demonstrating thread priority

           A-6:           Using the Runnable interface

           Topic B: 0   Introducing animation

           B-1:           Creating an animated figure

           B-2:           Animating text

           B-3:           Reducing flickering in animation

           B-4:           Loading a predrawn image

           B-5:           Running an animation in a browser

           Unit 16 :           Windows applications and packaging

           Topic A: 0   J/Direct and Windows Foundation Classes for Java

           A-1:           Understanding the Windows architecture and Win32 API

           A-2:           Creating a Java console to call J/Direct

           A-3:           Comparing native applications and architecturally neutral applications

           A-4:           Discussing WFC for Java

           A-5:           Creating a Windows project by using the Application Wizard

           A-6:           Using WFC forms

           A-7:           Using the Toolbox to add WFC controls

           Topic B: 0   WFC events and packaging

                        B-1:                        Adding WFC events to an application

                        B-2:                        Discussing the usage of packages

                        B-3:                        Creating a project as a Windows EXE package