JDEP183H

Handout 39:  Final Exam Review

 

December 7, 2006

 

Exam 1 Topics

 


1.  Object-Oriented Programming and Software Development

·        Basic components of object-oriented programming

·        Classes and objects

·        Class and instance methods

·        Class and instance data values

·        Inheritance

·        Stages of the software life cycle: design, coding, testing, operation (maintenance)

 

2.  Simple Class

·       Data Abstraction

·       Object declaration, creation

·       Garbage collection

·        Message sending

·        Program components: comments, import statement, class declaration, method declaration

 

3.  Numerical Data

 

4.  Instantiable Class

 

 

5.  Selection

 

6.  Repetition

 

7.      Sets

 

8.      Relations

 

9.      Functions

·        Basic definitions (domain, target, range, onto, one-to-one, one-to-one correspondence)

·        Identify function

·        Inverse function

·        Composition of functions

·        Proofs


 

Exam 2 Topics

 


1.  Event-Driven Programming

·        Basic components of event-driven programming: event sources, listeners, handlers, and an interface


that maps events to handlers.

·        Basic GUI objects

·        Types of events in Java

·        The concept of an Interface—abstract methods and implements.

 

 

2.  Exceptions and Assertions

·        Why use exceptions?

·        The try-catch block

·        “finally”

·        Types of exceptions including user-defined ones

·        Throwing exceptions, catching exceptions, propagating exceptions

·        Implicitly throwing exceptions, explicitly throwing exceptions, defining a new exception

 

3.  Arrays

 

4.  Search and Sorting

 

5.  Propositional Logic

·        Logical equivalences, logical implications

·        Truth tables

·        Direct, formal proof

·        Proof by contradiction

 

6.  Predicate Logic

·        Universal/Existential Generalization/Instantiation

·        Quantifiers

·        Negation of predicate logic statement

·        Translation of English statements


·        into predicate logic statements


 

New Topics

 


1.  Inheritance and Polymorphism

·        Importance and benefits of inheritance

·        Superclass and subclass

·        Abstract class

      ·        Benefits of abstract class

·        Member accessibility

·        Private, public, and protected

·        Constructors

·       Extending a class

·       Using classes effectively with polymorphism

·        Benefits of polymorphism

·       Syntax and how to use polymorphism correctly

 

2.  Recursion

·        Four components:  stopping condition, end case, recursive step, integration step

·       Call chain: winding and unwinding phases

·       Outside-to-inside decomposition

 

3.  History of Computing