all
Table of Contents
- 1.
4003-707 Advanced Programming -- 20022
- 2.
General Information
- 3.
What is Java?
- 3.1.
Differnt JVMS ...
- 3.2.
The first Program: Hello.java
- 3.3.
The first Application
- 3.4.
The first applet -- applets/hello
- 3.5.
Documentation -- javadoc
- 4.
Java Programming Basics
- 4.1.
The First Program
- 4.2.
Use of the StringThing Class
- 4.3.
Declaration versus Creation
- 4.4.
Let's use our first Class!
- 4.5.
Confusion about this
- 4.6.
Primitive Types and Values
- 4.7.
Unicode
- 4.8.
String to int
- 4.9.
Arithmetic Expressions
- 4.10.
Arithmetic Operators
- 4.11.
Mixed Mode Arithmetic and Casting
- 4.12.
Strings and Numbers
- 4.13.
Assignment Operators
- 4.14.
Playing with the Basic Types
- 4.15.
Flow Control
- 4.16.
Conditions
- 4.17.
Relational Operators
- 4.18.
Logical Operators
- 4.19.
if Statement
- 4.20.
Find the Maximum of two Numbers I
- 4.21.
Find the Maximum of two Numbers II with ?:
- 4.22.
while Statement
- 4.23.
Calculate Sqrt(2) without the MathClass
- 4.24.
Continue
- 4.25.
Break
- 4.26.
Return
- 4.27.
Abrupt Completion
- 4.28.
do Statement
- 4.29.
for Statement
- 4.30.
Find all Prime Numbers in [ 2 ... 100 ]
- 4.31.
switch Statement
- 4.32.
Partial Lowercase
Uppercase
- 4.33.
Questions
- 5.
Class Relationships
- 5.1.
Parameter Passing
- 5.2.
Private, Protected, Public and Final
- 5.3.
Static in Classes/Methods Lifetime
- 5.4.
A Point Class
- 5.5.
Inner Classes
- 6.
Inheritance
- 6.1.
Syntax
- 6.2.
Example
- 6.3.
Private, Protected and Final
- 6.4.
Determining Accessibility
- 6.5.
Polymorphism
- 6.6.
Another Example
- 6.7.
Class Cast I
- 6.8.
Class Cast I: Execution
- 6.9.
Abstract Classes
- 6.10.
Class Cast and Abstract Classes
- 6.11.
Documentation -- javadoc
- 6.12.
Additional Examples
- 6.13.
Interfaces
- 6.14.
Aggregation
- 6.15.
Short Examples for Clarification
- 6.16.
A Binary Search Tree
- 6.17.
Nested Classes
- 6.18.
Anonymous Classes
- 6.19.
Questions
- 6.20.
Static Initializer Blocks
- 6.21.
What is the following Example doing?
- 6.22.
Additional Questions
- 6.23.
Questions:
- 7.
Exceptions
- 8.
Java Tools
- 9.
Collections
- 9.1.
What is a Collection
- 9.2.
How could we Implement the Previous Example?
- 9.3.
Iterators
- 9.4.
What Is a Collections Framework?
- 9.5.
Benefits of a Collections Framework
- 9.6.
Collection Interface
- 9.7.
Set Interface
- 9.8.
Lists
- 9.9.
Maps
- 9.10.
Maps vs Collections
- 9.11.
An Picture
- 9.12.
General Purpose Implementations
- 9.13.
Implementations: Set
- 9.14.
Implementations: List
- 9.15.
Implementations: Map
- 9.16.
Algorithms
- 9.17.
Object Ordering
- 9.18.
Filling a HashTable and using a reasonable hashfunction
- 9.19.
Filling a HashTable and not using a reasonable hashfunction
- 9.20.
Sorting Maps
- 9.21.
Shuffling
- 9.22.
Routine Data Manipulation
- 9.23.
Searching
- 9.24.
Finding Extreme Values
- 9.25.
Comparable
- 9.26.
Example I:
- 9.27.
Example II:
- 9.28.
Example III:
- 9.29.
Comparator
- 9.30.
Example: CORRECT
- 9.31.
Example: NOT CORRECT
- 9.32.
Warning
- 9.33.
Comparator in separate Classes
- 9.34.
Exercise I
- 9.35.
Exercise II
- 9.36.
Be Aware of!
- 9.37.
Be Aware of and an Idea
- 10.
Threads
- 11.
Swing
- 12.
Event Handling
- 12.1.
Messaging vs. listening
- 12.2.
How to Implement an Event Handler
- 12.3.
Threads and Event Handling
- 12.4.
Interface MouseListener
- 12.5.
Availibility
- 12.6.
Checkbox
- 12.7.
Which One?
- 12.8.
Improved Lotto Handler ...
- 13.
Painting
- 13.1.
An Example of Painting
- 13.2.
The Coordinate System
- 13.3.
Draw a Yellow Rectangle
- 13.4.
Draw a Red/Green/Blue Rectangle
- 13.5.
Draw many Red/Green/Blue Rectangles
- 13.6.
A Sketch Application
- 13.7.
A Ticker Application
- 14.
Applets
- 15.
I/O: Files and Streams
- 16.
Networking
- 16.1.
The Subject
- 16.2.
A Network Architecture Example: WWW
- 16.3.
What is the Internet
- 16.4.
What is an Intranet
- 16.5.
Protocol
- 16.6.
Protocol Layering
- 16.7.
The OSI Seven-Layer Model
- 16.8.
TCP/IP
- 16.9.
TCP/IP layering
- 16.10.
Internet Addresses
- 16.11.
IP Address Classes
- 16.12.
Ethernet Address
- 16.13.
Encapsulation
- 16.14.
TCP Ports
- 16.15.
Socket
- 16.16.
java.net
- 16.17.
Getting Information
- 16.18.
Daytime Client
- 16.19.
Daytime Server
- 16.20.
Reading from and Writing to a Socket
- 16.21.
Connection to an URL
- 16.22.
Multi Client Server and Client
- 16.23.
Datagram Socket
- 16.24.
Remote Method Invocation
- 16.25.
Remote Method Invocation: Idea
- 16.26.
Remote Method Invocation: Idea II
- 16.27.
SenderProxy/Receiver Proxy
- 16.28.
SenderProxySource Code
- 16.29.
ReceiverProxySource Code
- 16.30.
Remote Method Invovation Registry
- 16.31.
Passing Non-remote Objects
- 16.32.
Advantages of Dynamic Code Loading
- 16.33.
Remote Interfaces, Objects, and Methods
- 16.34.
Creating Distributed Applications Using RMI
- 16.35.
Intro Example
- 16.36.
Hello World
- 16.37.
Hello World II
- 16.38.
Multiple Servers
- 16.39.
Running Multiple Server on different Machines
- 16.40.
Startup Multiple Server on different Machines
- 16.41.
Calculating PI
- 16.42.
Receiving and Sending Objects
- 16.43.
RMI and Multi Threaded Problems
- 16.44.
Dynamic Class Loading
- 17.
Reflection API
- 17.1.
Intro example
- 17.2.
Discovering Class Modifiers
- 17.3.
Identifying Class Fields
- 17.4.
Getting Values
- 17.5.
Setting Values
- 17.6.
Obtaining Method Information
- 17.7.
Invoking Methods
- 18.
An Introduction to JRMS
- 19.
Many-to-Many Invocation:
A New Object Oriented Paradigm to build Software Infrastructures
- 19.1.
Current Hardware Infrastructure
- 19.2.
Administration
- 19.3.
Current Software Infrastructure
- 19.4.
Typical Communication Pattern
- 19.5.
Typical Ways to Communicate
- 19.6.
A typical Client-Server Architecture
- 19.7.
A typical Client-Server Architecture Problem
- 19.8.
Different Kind of Infrastructure
- 19.9.
Different Kind of Hardware Infrastructure
- 19.10.
Different Kind of Environment: Ad Hoc Network
- 19.11.
A typical Serverless Architecture
- 19.12.
Different Kind of Software Infrastructure
- 19.13.
M2MI: A New Paradigm for Ad Hoc Collaborative Systems
- 19.14.
References
- 19.15.
Using Omnihandles
- 19.16.
Using Multihandles
- 19.17.
Using Unihandles
- 19.18.
Characteristics of M2MI Invocations
- 19.19.
M2MI Based Application
- 19.20.
The Idea for a Chat Application
- 19.21.
The Chat Interface
- 19.22.
Chat Object Source Code
- 19.23.
Service Discovery
- 19.24.
The Idea
- 19.25.
The Interfaces
- 19.26.
Other M2MI Applications
- 19.27.
M2MI Architecture
- 19.28.
Layers
- 19.29.
Software Architecture
- 19.30.
Status
- 19.31.
In Progress
- 19.32.
Future Plans
- 20.
Possible Questions
- 21.
Homework 1 -- Dec/4/2002 - Dec/11/2001
- 22.
Homework 2 -- Dec/16/2002 - Jan/6/2003
- 23.
Homework 3 -- Dec/23/2002 - Jan/10/2003
- 24.
Homework 4 -- Jan/13/2003 - Jan/26/2003
- 25.
Homework 5 -- Jan/22/2003 - Jan/19/2003
- 26.
Homework 6 -- Jan/29/2003 - Feb/5/2003
- 27.
Homework 7 -- Feb/5/2003 - Feb/16/2003
- 28.
Under Construction
- 29.
Homework 5 -- Jan/29/2003 - Feb/20/2003
Created by
unroff,
java2html &
& hp-tools.
© by csfac. All Rights Reserved (2003).
It is not allowed to print these pages on a CAST printer.
Last modified 11/February/03