Lecture notes for the Introduction to Computer Science II by James Tam Return to the course web page

CPSC 233: Final Exam Information

 

Note: Because I'm still in the process of making the transition as the instructor of this class, additional details will be added during the next couple of weeks.

 

General information:

Review materials

Potential exam topics1

  • The history behind the Java language
  • The basics of writing a program:
 
  • Compiling and interpreting the source code
 
  • Simple types
 
  • Declaring and using variables
 
  • Declaring and using attributes and methods
 
  • Declaring references, creating and using instances of classes, constructors
 
  • Dynamic memory allocation and automatic garbage collection
 
  • Using basic constructs (e.g., while loops) and data structures (e.g., arrays, linked lists)
 
  • Parameter passing
 
  • Static vs. non-static attributes and methods
 
  • The 'this' reference
  • Encapsulation and information hiding
  • Relations between classes: association, aggregation, inheritance
  • Polymorphic methods, overloading and overriding.
  • Declaring references and creating instances of classes.
  • Interfaces vs. classes, abstract vs. non-abstract classes
  • Levels of access permission: public, protected, private
  • Scope and shadowing

1 Any exam questions that require you to write or trace program code will be based on the Object-Oriented paradigm and the Java language (you won't be tested on procedural programming in 'C')

Types of exam questions

  • Code traces
  • Code writing
  • Conceptual questions e.g., definitions