Java Programming


Upon completion of this course, the student will be able to:

a. Design, create, build, and debug Java applications and applets.
b. Apply algorithmic thinking to solve programming problems.
c. Implement syntax rules in Java programs.
d. Explain variables and data types used in program development.
e. Apply arithmetic operations for displaying numeric output.
f. Write and apply decision structures for determining different operations.
g. Write and apply loop structures to perform repetitive tasks.
h. Write user-defined methods.
i. Identify and implement arrays, array lists, and multidimensional arrays.
j. Write Java programs using object-oriented programming techniques including classes,
objects, methods, instance variables, composition, inheritance, and polymorphism.
k. Write programs using graphical user interface (GUI) components and Java’s Event Handling

Course Duration : 2 Months
Schedule: 2 Days a Week sessions

I. Introduction

A. History of Java
B. Features of Java
C. How Java works
D. Types of Java Programs
E. Edit, compile, and run Java applications and applets

II. Variables, data types, and expressions

A. Identifier rules
B. Naming variables, constants (final) and references
C. Primitive data types
D. Arithmetic Operators
E. Assignment Operators
F. Relational and Logical Operators

III. Program control flow

A. Sequence structure
B. Selection structure
C. Repetition structure
D. Jump (Sequence) structure

IV. Methods

A. Java API and Package/Library methods
B. User-defined methods
C. Scope and duration
D. Local and Field variables
E. Pass-by-value, Pass-by-reference
F. Recursion
G. Overloading

V. Arrays

A. Declaration and allocation
B. Passing arrays to methods
C. Sorting, searching
D. Multiple-subscripted

VI. Object-Based Programming

A. Classes and objects, instance variables, and instance methods
B. Member access modifiers: public, private, protected, package
C. Creating packages
D. Constructors, overloaded constructors
E. Set (mutator), Get (access), and predicate methods
F. Final instance variables
G. Composition
H. Finalizers, garbage collection
I. Static class members
J. this reference

VII. Object-Oriented Programming

A. Inheritance
B. Super class, subclass
C. Polymorphism
D. Dynamic method binding
CSC 151: June 2013
E. Abstract class, Concrete class
F. Inner class definition
G. Type-wrapper class for primitive data types
H. Interfaces

VIII. Graphical User Interface

A. Event-Driven Programming and Event Handling Model
B. Window Components
C. Mouse and keyboard event handling
D. Adapter classes
E. Layout managers