Image of computer keyboard NC State University
NC State University - Computer Training Unit

Java Programming

Description: This course provides a comprehensive and in-depth review of the Java Programming language to software developers, Web programmers and Web Masters. Course is offered on Evenings, Saturdays and Sundays. Contact 919.515.9095 for dates/times/pricing. (Full Course runs for 8 weeks. Call for more detailed information.)

Suggested Prerequisites:  Programming experience, knowledge of programming language, such as C or C++, familiarity with object-oriented concepts and/or event driven programming. 

Attend and You Will Learn
Lesson 1:
DECLARATIONS AND ACCESS CONTROL
Write code that declares,

constructs and initializes arrays

of any base type using any of the

permitted forms both for

declaration and for initialization.

Declare classes, nested classes,

methods, instance variables,

static variables

and automatic (method local)

variables making appropriate use of

all permitted modifiers (such as

public, final, static, abstract,

etc.). State the significance of

each of these modifiers both

singly and in combination and

state the effect of package

relationships

on declared items qualified by

these modifiers.

For a given class, determine if a

default constructor will be

created and if so state the

prototype of that constructor.

Identify legal return types for

any method given the declarations of

all related methods in this or

parent classes.
Lesson 2:
FLOW CONTROL, ASSERTIONS, & EXCEPTION HANDLING
Write code using if and switch statements

and identify legal argument types for these

statements.

Write code using all forms of loops

including labeled and unlabeled,

use of break and continue, and state

the values taken by loop counter

variables during and after loop execution.

Write code that makes proper use of

exceptions and exception handling clauses

(try, catch, finally) and declares methods

and overriding methods that throw exceptions.

Recognize the effect of an

exception arising at a specified point

in a code fragment.

Note: The exception may be a

runtime exception, a checked exception,

or an error (the code may include

try, catch, or finally clauses in

any legitimate combination).

Write code that makes proper use of

assertions, and distinguish appropriate

from inappropriate uses of assertions.

Identify correct statements about

the assertion mechanism.
Lesson 3:
GARBAGE COLLECTION
State the behavior that is guaranteed

by the garbage collection system.

Write code that explicitly makes

objects eligible for garbage collection.

Recognize the point in a piece of

source code at which an object

becomes eligible for garbage collection.
Lesson 4:
LANGUAGE FUNDAMENTALS
Identify correctly constructed package

declarations, import statements,

class declarations (of all forms

including inner classes) interface

declarations, method declarations

(including the main method that is used

to start execution of a class),

variable declarations, and identifiers.

Identify classes that correctly

implement an interface where that interface

is either java.lang.Runnable

or a fully specified interface

in the question.

State the correspondence between

index values in the argument array

passed to a main method and command

line arguments.

Identify all Java programming

language keywords.

Note: There will not be any

questions regarding esoteric

distinctions between keywords and manifest

constants.

State the effect of using a variable or

array element of any kind when no

explicit assignment has been

made to it.

State the range of all primitive

formats, data types and declare

literal values for String and all

primitive types using all permitted

formats bases and representations.
Lesson 5:
OPERATORS AND ASSIGNMENTS
Determine the result of applying

any operator (including assignment

operators

and instance of) to operands of any

type class scope or accessibility or

any combination of these.

Determine the result of applying

the boolean equals (Object) method

to objects of any combination of

the classes java.lang.String,

java.lang.Boolean and

java.lang.Object.

In an expression involving the

operators &, |, &&, || and

variables of known values state

which operands are evaluated and

the value of the expression.

Determine the effect upon objects

and primitive values of passing

variables into methods and performing

assignments or other modifying

operations in that method.
Lesson 6:
OVERLOADING, OVERRIDING, RUNTIME TYPE /OBJECT ORIE
State the benefits of encapsulation in

object oriented design and write

code that implements tightly

encapsulated classes and the

relationships "is a" and "has a".

Write code to invoke overridden

or overloaded methods and parental

or overloaded constructors;

and describe the effect of invoking

these methods.

Write code to construct instances

of any concrete class including

normal top level classes and nested

classes.
Lesson 7:
THREADS
Write code to define, instantiate

and start new threads using both

java.lang.Thread and

java.lang.Runnable.

Recognize conditions that might prevent

a thread from executing.

Write code using synchronized wait,

notify and notifyAll to protect

against concurrent access problems

and to communicate between threads.

Define the interaction among

threads and object locks when

executing synchronized wait,

notify or notifyAll.
Lesson 8:
FUNDAMENTAL CLASSES IN THE JAVA.LANG PACKAGE
Write code using the following

methods of the java.lang.Math

class: abs, ceil, floor, max, min,

random, round, sin, cos, tan, sqrt.

Describe the significance of the

immutability of

String objects.

Describe the significance of wrapper classes,

including making appropriate selections

in the wrapper classes to suit

specified behavior

requirements, stating the result

of executing a

fragment of code that includes an

instance of one

of the wrapper classes, and writing code

using the following methods

of the wrapper classes

(e.g., Integer, Double, etc.):



doubleValue

floatValue

intValue

longValue

parseXxx

getXxx

toString

toHexString
Lesson 9:
THE COLLECTIONS FRAMEWORK
Make appropriate selection of collection

classes/interfaces to suit specified

behavior

requirements.

Distinguish between correct and incorrect

implementations of hashcode methods.

For available dates, Click Here.

Upcoming Events

919.515.8163 - NC State University - 1101 Gorman Street - Campus Box 7401 - Raleigh, NC 27695
Computer Training Unit is a unit of McKimmon Center for Extension & Continuing Education
Copyright © 2008 - North Carolina State University - All Rights Reserved - Policy Disclaimer

Valid XHTML 1.0 Strict Valid CSS