Object-oriented Java programming
This module teaches the fundamental ideas behind the object-oriented approach to programming through the widely used Java programming language. Concentrating on aspects of Java that best demonstrate object-oriented principles and good practice, you’ll gain a solid basis for further study of the Java language and object-oriented software development. Some experience in writing computer programs is essential.
Modules count towards OU qualifications
OU qualifications are modular in structure; the credits from this undergraduate module could count towards a certificate of higher education, diploma of higher education, foundation degree or honours degree.
Module
- Module code
- M250
- Credits
- 30
- Study level
OU | SCQF | FHEQ |
2 | 8 | 5 |
What you will study
In the object-oriented view of software, programs are considered collections of objects that interact using each other’s methods and results. These ideas are at the forefront of modern software development.
Throughout the module, you’ll use BlueJ, an integrated development environment (IDE) specifically developed for teaching and learning object-oriented programming. BlueJ is used worldwide and is easy to use. It emphasises visualisation and interaction techniques that encourage experimentation and exploration.
The module takes an ‘objects first’ approach to teaching; you start seeing and interacting with objects from the beginning, supported by BlueJ features that allow you to learn the principles of object construction and method calling.
You’ll soon start using Java code and syntax to edit provided practical examples, such as a ticket machine, a digital clock, and a program that draws simple graphics. Initially, you’ll add minor functionality to the provided projects and experiment with their facilities.
The module continues the teaching about fundamental object-oriented ideas by investigating:
- how to control the initial state of newly created objects
- different kinds of variables and methods in Java
- different kinds of data, including primitive and object types
- inheritance hierarchies and their impact on code reuse
- overriding methods and polymorphism
- abstract classes and interfaces
- file input and output.
Along the way, you’ll learn about Java structures for selection and iteration and more about some of the core Java library classes. We introduce you to ideas about writing Java code in a good style and using appropriate design, as well as about different kinds of errors you will encounter and how to deal with them.
As you go on, you’ll develop increasingly complex object-oriented projects from scratch, using the BlueJ IDE, and better understand the more complex examples in the textbook. The skill of appropriately utilising a provided library of classes (searching for a useful class and method, for example) is explicitly developed in this context.
The last part of the module begins by investigating how data is written to and from files in Java and how objects can be made persistent by writing them to file. Both of these techniques are useful in larger-scale programs.
Vocational relevance
This module provides you with a basis for further study of Java programming and introduces you to many (but not all) concepts that are tested by Java Certified Programmer and Java Certified Associate exams.
Teaching and assessment
Support from your tutor
You’ll get help and support from an assigned tutor throughout your module.
They’ll help by:
- marking your assignments and offering detailed feedback to help you improve
- providing individual guidance, whether that’s for general study skills or specific module content
- guiding you to additional learning resources
- facilitating online discussions between your fellow students in the dedicated module and tutor group forums.
Online tutorials run throughout the module. Where possible, we’ll make recordings available. While they’re not compulsory, we strongly encourage you to participate.
Assessment
The assessment details for this module can be found in the facts box.
-
Course work includes:
- 3 Tutor-marked assignments (TMAs)
- Examination
Future availability
Object-oriented Java programming (M250) starts once a year – in October.
This page describes the module that will start in October 2025.
We expect it to start for the last time in October 2027.
Entry requirements
You need to be familiar with basic programming concepts – check if you’re ready for M250, with our self-assessed quiz.
You’d normally be prepared by completing OU level 1 study as part of one of our computing and IT qualifications. For this module, we recommend that you’ve passed Introduction to computing and technology 1 (TM111) and Introduction to computing and information technology 2 (TM112); or their predecessor TU100. Alternatively, you should be familiar with two other programming languages such as Scratch and Python.
What's included
The module uses a text book (Objects First with BlueJ, by Barnes and Kölling), which will be provided in print and ebook versions. This is supplemented by a range of online materials provided on the module website including OU produced Chapter Companions, supplements, software, programming activities, student forums and a study planner.
Computing requirements
- Primary device – A desktop or laptop computer. It’s possible to access some materials on a mobile phone, tablet or Chromebook; however, they will not be suitable as your primary device.
- Peripheral device – Headphones/earphones with a built-in microphone for online tutorials.
- Our OU Study app operates on supported versions of Android and iOS.
- Operating systems – Windows 11 or latest supported macOS. Microsoft will no longer support Windows 10 as of 14 October 2025.
- Internet access – Broadband or mobile connection.
- Browser – Google Chrome and Microsoft Edge are recommended. Mozilla Firefox and Safari may be suitable.
If you have a disability
The OU strives to make all aspects of study accessible to everyone and this outlines what studying M250 involves. You should use this information to inform your study preparations and any discussions with us about how we can meet your needs.
Accessibility statement for Object-oriented Java programming (M250)
Mode of study
All of this module’s study materials are online. Online materials comprise pages of text with images, and audio and video clips of 15 seconds to 30 minutes long. Online materials also include links to external resources, online forums and online tutorial rooms.
If you’re using printed materials as part of reasonable adjustments to support your studies, note that printed versions of online materials are unavailable for this module.
Tuition strategy
This module has online tutorials. Although not compulsory, tutorials will help you consolidate your learning.
Mathematical and scientific expressions and notations
The module contains a small amount of mathematical content using standard notations, and you will be required to use such notation within assessment.
Diagrams and other visual content
The study materials contain a considerable number of diagrams. Reading, interpreting and producing examples of these is an important part of the study of this module and can be assessed. Figure descriptions are provided for most figures.
Specialist reading material
In this module you’ll be working with specialist reading material such as software source code. This is delivered online and via bespoke third party software.
Assessment
This module has tutor-marked assignments (TMAs) that you must submit via the online TMA service, interactive computer-marked assignments completed online and a remote exam.
Feedback
You’ll receive feedback from your tutor on your submitted Tutor-Marked Assignments (TMAs). Feedback will help you to reflect on your TMA performance and help you prepare for your next assignment.
Schedule
All University modules are structured according to a set timetable and you’ll need time-management skills to keep your studies on track. You’ll be supported in developing these skills.
Specialist software
This module uses specialist Java software and you may need to use the Java Access Bridge software and other assistive tools such as screen readers. The module materials include an Accessibility Guide to help students with additional needs.