DP CompSci: Unit D3: OOP Programming

Teaching notes

Java resources

Cheatsheets / reference summaries

Download my Java Cheat-book as a handy reminder/prompt of key Java syntax (it is not a teaching book, but a "reminders" book).

Online exercises

University of Helsinki online course

The University of Helsinki has an excellent online resource for learning Java. You can use it as standalone notes + exercises, or you can even sign up to their MOOC, and submit completed activities for recognition. They provide the course via a Creative Commons license, so I'm able to host PDF copies here for reference as well (see the offline copy below).

The online course is split into two parts. Part 1 contains weeks 1-6, and part 2 contains weeks 7-12. Start with the setup instructions (particularly relevant if you want to submit your completed exercises to U.Helsinki for recognition).

Introducing part 1

  • Week 1: User input, printing on screen, conditional statements
  • Week 2: Loops, basics of methods
  • Week 3: Methods, the ArrayList data structure
  • Week 4: Basics of objects
  • Week 5: More on objects
  • Week 6: Tables, sorting, searching

Introducing Part 2

  • Week 7: HashMap data structure
  • Week 8: Interfaces
  • Week 9: Exceptions, reading from files
  • Week 10: Inheritance
  • Week 11: Writing into files, graphical user interface (GUI)
  • Week 12: Regular expressions, iterators, enum, recap

Some of the exercises require files provided by U Helskini in order to complete. Those files can be downloaded here:

University of Helsinki offline archive of course

The following are PDF versions of the University of Helskini's course materials.

  • Week 1: User input, printing on screes, conditional statements
  • Week 2: Loops, basics of methods
  • Week 3: Methods, the ArrayList data structure
  • Week 4: Basics of objects
  • Week 5: More on objects
  • Week 6: Tables, sorting, searching
  • Week 7: HashMap data structure
  • Week 8: Interfaces
  • Week 9: Exceptions, reading from files
  • Week 10: Inheritance
  • Week 11: Writing into files, graphical user interface (GUI)
  • Week 12: Regular expressions, iterators, enum, recap