Call 644-6106,
ext. 107
or
e-mail
for course registration or more information |
|
Overview
- Java Programming is designed to give students the ability to
program in a new object-oriented programming language designed for portability and
simplicity. Students will be able to construct both stand-alone programs and applets
capable of being run inside an HTML browser.
-
- Upon completion of the course, students should be able to:
- Understand the principles of object-oriented programming and
decompose simple real-world situations.
- Apply basic language fundamentals, including:
- Declaring Variables
- References
- Operators
- Flow Control
- Classes
- Overloading
- Inheritance
- Packages
- Structured Error Handling
- Be familiar with the core Java libraries that provide the
following capabilities:
- System interaction
- Fundamental Classes for Inheritance and Primitive Wrapping
- String Creation and Manipulation
- Console I/O
- File I/O
- Multiple Threaded Execution
- GUI Interface Message Handling
- Graphics, including Simple Animation
- Network Programming
- Math, Vector, and Date Utilities
- Write applications that can be downloaded via the World-Wide
Web.
-
Course prerequisites
Previous programming experience in any
language. Knowledge of C++ is helpful, but not required. Knowledge of the Internet is
helpful, but not required.
-
Course outline
- A New Way of Thinking Object-Oriented
- Messages and Methods
- Classes and Instances
- Inheritance and Reusability
- Polymorphism & Method Binding
- Responsibility-Driven Design
- Identifying Objects, Assigning Responsibilities, &
Designing From Scenarios
- CRCD Cards
- Implementation Techniques
- Commonality & Discovering Inheritance
- Defining Classes & Methods
- Java Basics
- A simple Java application
- Comments
- Intrinsic Variables
- Literals
- Expressions
- Operators
- Bitwise Operations
- Logical Operators
- Conditional Statements
- if / else
- switch
- ?:
- Loops
- while / do while
- for
- break statements
- labeled break statements
- continue statement
- Classes
- Instance Variables
- Constants
- Methods
- Method Signatures and Overloading
- Instantiating (new)
- Accessing members of an Object
- Intro to Strings and String Operators
- this keyword
- Class variables (static)
- Static Methods
- Access Control
- Constructors
- Copy constructors
- Constructors Calling Constructors
- Static Initializers and Construction
- Finalize Method
- Inheritance
- Super / Sub Classes
- Polymorphism
- Abstract Classes
- Implementation Details
- super Keyword
- protected Access
- Interfaces
- Casting / Instanceof Operator
- Arrays
- Arrays of Primitive Types
- Arrays of Objects
- Multi-dimensional Arrays
- Anonymous Arrays
- Packages
- package keyword
- CLASSPATH environmental variable
- Java Class Libraries
- java.lang
- Object Class
- Wrapper Classes
- String Class Revisited
- Mention native modifier
- System Classes
- Math Class
- Utility Classes
- Date/Calendar Classes
- Vector and Stack Class
- Random Class
- Exceptions
- try, throw, catch, throws Keywords
- try Blocks
- catching Exceptions
- finally Clauses
- Applets
- Applet Package
- init / destroy
- start / stop
- paint
- Graphics
- Fonts, Color, Simple Images, etc.
- Inner and Anonymous Classes
- Event Handling (1.02 & 1.1)
- Mouse Events
- Keypress Events
- Focus Events
- Point and Dimension Types
- Abstract Windowing Toolkit
- Components
- Containers
- Layout Managers
- Action Events
- Windows
- Frames
- pack() and show()
- Dialog boxes
- Scroll Bars & Events
- Menus & Menu Events
- Pop-up Menus
- Choices
- Printing
- Threads
- Starting a thread
- Stopping a thread
- Synchronization
- Using threads for simple animation
- Drawing Optimizations
- Erasing the Background
- Clipping
- Double buffering
- Input/Output Library
- Streams
- Input & Output Streams
- Readers and Writers
- Java Network Package
- URLs
- Sockets
- SocketServers
- Overview of
- Inter-process Communication
- RMI
- Java Beans
- Serialization
- Security
- JNI
- JFC and Swing Components
|