The Artima Developer Community
Sponsored Link

Objects and Java Seminar by Bill Venners
Introduction to Java
Lecture Handout

Agenda


About this Seminar


Seminar Overview

 
1. Introduction to Java
2. Classes and Objects
3. Initialization and Cleanup

4. Packages and Access Specifiers
5. Composition and Inheritance
6. Polymorphism and Interfaces

7. Collections and Inner Classes
8. Exceptions
9. Threads
 
10. Applets and Graphics
11. AWT and Swing Components
12. Events and GUIs

13. I/O and Object Serialization
14. Network Programming
15. Remote Method Invocation (RMI)

Why Java?


Major Features


Java is Object-Oriented


Abstraction


Encapsulation


Objects Expose an Interface

Interface: the messages an object will accept



Creating an Object: Account acct = new Account();
Sending a Message: acct.deposit(15000);


Interface vs. Implementation


Composition

Composition: enlisting the help of other objects


Inheritance



Subclass is-a superclass


Subclass accepts same messages as superclass


Polymorphism

Code can treat subclasses as if they are superclasses:

1 void makeMoney() {
2     Account a = new Account();
3     OverdraftAccount oa = new OverdraftAccount(50000);
4     makeDeposit(a, 100);
5     makeDeposit(oa, 200);    // "upcasting"
6 }
7 void makeDeposit(Account account, int amount) {
8     account.deposit(amount); // "dynamic binding"
9 }

Java Applications

Objects in one VM sending messages via interfaces

The Lifetime of an Object


Exceptions


Multi-threading


Java APIs


Compiling and Running


Linking, Optimization, and Execution


Sponsored Links

Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use