SlideShare a Scribd company logo
Lecture 2

Object Orientation


  James Uren



     BIT204

Software Design
Lecture 2

                             Object Orientation



Object Orientated Software

Modern software languages (VB.NET, C++, Java) use the software model of
object orientation (OO). This means data and functionality are wrapped up in
objects (or classes) that can manage their data privately and inherit
properties from other objects.

The objects in software design will often take their names from the nouns in
the specification. For example, in a driving computer game, the Car object will
contain data like the car’s weight, and functionality like ‘Accelerate’. The
FordEscort object inherits these properties and implements the Car’s
functionality.

This means the Driver object that is calling on the Car, does not need to know
the model of the car. This is called polymorphism. Note that in this case it is
never possible to create a generic Car object as this class is abstract or
virtual.



               Driver             Has A             Car




                                                          Is A
                                       FordEscort



The above representation of OO software is called UML (Universal Modelling
Language).

In C it would be described like this:

class Driver
{
     Driver() {}      // Constructor
                      // (called when object is created)
       ~Driver() {} // Destructor
                      // (called when object is deleted)


Lecture 1: Software Fundamentals
BIT204: Software Design – James Uren
                                                                               2

More Related Content

Viewers also liked

How to Sell 3D
How to Sell 3DHow to Sell 3D
How to Sell 3DJames Uren
 
Battle of the Codecs
Battle of the CodecsBattle of the Codecs
Battle of the CodecsJames Uren
 
IPTV Workshop FDB104
IPTV Workshop FDB104IPTV Workshop FDB104
IPTV Workshop FDB104James Uren
 
3D Anytime, Anywhere
3D Anytime, Anywhere3D Anytime, Anywhere
3D Anytime, AnywhereJames Uren
 

Viewers also liked (6)

Cost of 3D
Cost of 3DCost of 3D
Cost of 3D
 
How to Sell 3D
How to Sell 3DHow to Sell 3D
How to Sell 3D
 
Battle of the Codecs
Battle of the CodecsBattle of the Codecs
Battle of the Codecs
 
IPTV Workshop FDB104
IPTV Workshop FDB104IPTV Workshop FDB104
IPTV Workshop FDB104
 
3D Workshop
3D Workshop3D Workshop
3D Workshop
 
3D Anytime, Anywhere
3D Anytime, Anywhere3D Anytime, Anywhere
3D Anytime, Anywhere
 

Similar to BIT204 2 Object Orientation

Object oriented fundamentals_in_java
Object oriented fundamentals_in_javaObject oriented fundamentals_in_java
Object oriented fundamentals_in_javaSelf
 
Lec 4 06_aug [compatibility mode]
Lec 4 06_aug [compatibility mode]Lec 4 06_aug [compatibility mode]
Lec 4 06_aug [compatibility mode]Palak Sanghani
 
Builder Design Pattern (Generic Construction -Different Representation)
Builder Design Pattern (Generic Construction -Different Representation)Builder Design Pattern (Generic Construction -Different Representation)
Builder Design Pattern (Generic Construction -Different Representation)Sameer Rathoud
 
Intro Java Rev010
Intro Java Rev010Intro Java Rev010
Intro Java Rev010Rich Helton
 
Javascript coding-and-design-patterns
Javascript coding-and-design-patternsJavascript coding-and-design-patterns
Javascript coding-and-design-patternsHernan Mammana
 
EclipseCon 2006: Introduction to the Eclipse Modeling Framework
EclipseCon 2006: Introduction to the Eclipse Modeling FrameworkEclipseCon 2006: Introduction to the Eclipse Modeling Framework
EclipseCon 2006: Introduction to the Eclipse Modeling FrameworkDave Steinberg
 
Using traits in PHP
Using traits in PHPUsing traits in PHP
Using traits in PHPMaksym Hopei
 
Chapter 1- Introduction.ppt
Chapter 1- Introduction.pptChapter 1- Introduction.ppt
Chapter 1- Introduction.pptTigistTilahun1
 
distributing computing
distributing computingdistributing computing
distributing computingnibiganesh
 
Eclipse World 2007: Fundamentals of the Eclipse Modeling Framework
Eclipse World 2007: Fundamentals of the Eclipse Modeling FrameworkEclipse World 2007: Fundamentals of the Eclipse Modeling Framework
Eclipse World 2007: Fundamentals of the Eclipse Modeling FrameworkDave Steinberg
 
EclipseCon 2007: Effective Use of the Eclipse Modeling Framework
EclipseCon 2007: Effective Use of the Eclipse Modeling FrameworkEclipseCon 2007: Effective Use of the Eclipse Modeling Framework
EclipseCon 2007: Effective Use of the Eclipse Modeling FrameworkDave Steinberg
 
COMP111-Week-1_138439.pptx
COMP111-Week-1_138439.pptxCOMP111-Week-1_138439.pptx
COMP111-Week-1_138439.pptxFarooqTariq8
 

Similar to BIT204 2 Object Orientation (20)

Object oriented fundamentals_in_java
Object oriented fundamentals_in_javaObject oriented fundamentals_in_java
Object oriented fundamentals_in_java
 
Lec 4 06_aug [compatibility mode]
Lec 4 06_aug [compatibility mode]Lec 4 06_aug [compatibility mode]
Lec 4 06_aug [compatibility mode]
 
Builder Design Pattern (Generic Construction -Different Representation)
Builder Design Pattern (Generic Construction -Different Representation)Builder Design Pattern (Generic Construction -Different Representation)
Builder Design Pattern (Generic Construction -Different Representation)
 
L9
L9L9
L9
 
Android Dev Study Jam.pptx
Android Dev Study Jam.pptxAndroid Dev Study Jam.pptx
Android Dev Study Jam.pptx
 
Intro Java Rev010
Intro Java Rev010Intro Java Rev010
Intro Java Rev010
 
Javascript coding-and-design-patterns
Javascript coding-and-design-patternsJavascript coding-and-design-patterns
Javascript coding-and-design-patterns
 
Android Dev Study Jam.pptx
Android Dev Study Jam.pptxAndroid Dev Study Jam.pptx
Android Dev Study Jam.pptx
 
EclipseCon 2006: Introduction to the Eclipse Modeling Framework
EclipseCon 2006: Introduction to the Eclipse Modeling FrameworkEclipseCon 2006: Introduction to the Eclipse Modeling Framework
EclipseCon 2006: Introduction to the Eclipse Modeling Framework
 
Using traits in PHP
Using traits in PHPUsing traits in PHP
Using traits in PHP
 
Unit 3
Unit 3Unit 3
Unit 3
 
Chapter 1- Introduction.ppt
Chapter 1- Introduction.pptChapter 1- Introduction.ppt
Chapter 1- Introduction.ppt
 
distributing computing
distributing computingdistributing computing
distributing computing
 
Eclipse World 2007: Fundamentals of the Eclipse Modeling Framework
Eclipse World 2007: Fundamentals of the Eclipse Modeling FrameworkEclipse World 2007: Fundamentals of the Eclipse Modeling Framework
Eclipse World 2007: Fundamentals of the Eclipse Modeling Framework
 
Intro to Android Programming
Intro to Android ProgrammingIntro to Android Programming
Intro to Android Programming
 
EclipseCon 2007: Effective Use of the Eclipse Modeling Framework
EclipseCon 2007: Effective Use of the Eclipse Modeling FrameworkEclipseCon 2007: Effective Use of the Eclipse Modeling Framework
EclipseCon 2007: Effective Use of the Eclipse Modeling Framework
 
COMP111-Week-1_138439.pptx
COMP111-Week-1_138439.pptxCOMP111-Week-1_138439.pptx
COMP111-Week-1_138439.pptx
 
OOP and C++Classes
OOP and C++ClassesOOP and C++Classes
OOP and C++Classes
 
JavaScript Core
JavaScript CoreJavaScript Core
JavaScript Core
 
Java getstarted
Java getstartedJava getstarted
Java getstarted
 

More from James Uren

BTC302 Project Brief
BTC302 Project BriefBTC302 Project Brief
BTC302 Project BriefJames Uren
 
BTC BSc Programme Specification
BTC BSc Programme SpecificationBTC BSc Programme Specification
BTC BSc Programme SpecificationJames Uren
 
BTC FdSc Programme Specification
BTC FdSc Programme SpecificationBTC FdSc Programme Specification
BTC FdSc Programme SpecificationJames Uren
 
BTC208 Project Brief
BTC208 Project BriefBTC208 Project Brief
BTC208 Project BriefJames Uren
 
BIT204 1 Software Fundamentals
BIT204 1 Software FundamentalsBIT204 1 Software Fundamentals
BIT204 1 Software FundamentalsJames Uren
 
BTC108 1 Introduction To Electronics 1
BTC108 1 Introduction To Electronics 1BTC108 1 Introduction To Electronics 1
BTC108 1 Introduction To Electronics 1James Uren
 
BTC108 2 Introduction To Electronics 2
BTC108 2 Introduction To Electronics 2BTC108 2 Introduction To Electronics 2
BTC108 2 Introduction To Electronics 2James Uren
 
BTC108 3 Capacitance
BTC108 3 CapacitanceBTC108 3 Capacitance
BTC108 3 CapacitanceJames Uren
 
BTC108 4 AC Electronics
BTC108 4 AC ElectronicsBTC108 4 AC Electronics
BTC108 4 AC ElectronicsJames Uren
 
BTC108 5 Fourier
BTC108 5 FourierBTC108 5 Fourier
BTC108 5 FourierJames Uren
 
BTC3: Engineering Project Brief
BTC3: Engineering Project BriefBTC3: Engineering Project Brief
BTC3: Engineering Project BriefJames Uren
 
Converged Learning
Converged LearningConverged Learning
Converged LearningJames Uren
 
Internet Video Seminar
Internet Video SeminarInternet Video Seminar
Internet Video SeminarJames Uren
 
Peer Assisted Learning
Peer Assisted LearningPeer Assisted Learning
Peer Assisted LearningJames Uren
 

More from James Uren (17)

FORK Overview
FORK OverviewFORK Overview
FORK Overview
 
BTC302 Project Brief
BTC302 Project BriefBTC302 Project Brief
BTC302 Project Brief
 
BTC BSc Programme Specification
BTC BSc Programme SpecificationBTC BSc Programme Specification
BTC BSc Programme Specification
 
BTC FdSc Programme Specification
BTC FdSc Programme SpecificationBTC FdSc Programme Specification
BTC FdSc Programme Specification
 
BTC208 Project Brief
BTC208 Project BriefBTC208 Project Brief
BTC208 Project Brief
 
BIT204 1 Software Fundamentals
BIT204 1 Software FundamentalsBIT204 1 Software Fundamentals
BIT204 1 Software Fundamentals
 
BTC108 1 Introduction To Electronics 1
BTC108 1 Introduction To Electronics 1BTC108 1 Introduction To Electronics 1
BTC108 1 Introduction To Electronics 1
 
BTC108 2 Introduction To Electronics 2
BTC108 2 Introduction To Electronics 2BTC108 2 Introduction To Electronics 2
BTC108 2 Introduction To Electronics 2
 
BTC108 3 Capacitance
BTC108 3 CapacitanceBTC108 3 Capacitance
BTC108 3 Capacitance
 
BTC108 4 AC Electronics
BTC108 4 AC ElectronicsBTC108 4 AC Electronics
BTC108 4 AC Electronics
 
BTC108 5 Fourier
BTC108 5 FourierBTC108 5 Fourier
BTC108 5 Fourier
 
BTC3: Engineering Project Brief
BTC3: Engineering Project BriefBTC3: Engineering Project Brief
BTC3: Engineering Project Brief
 
Bp2
Bp2Bp2
Bp2
 
Converged Learning
Converged LearningConverged Learning
Converged Learning
 
Internet Video Seminar
Internet Video SeminarInternet Video Seminar
Internet Video Seminar
 
Laptops
LaptopsLaptops
Laptops
 
Peer Assisted Learning
Peer Assisted LearningPeer Assisted Learning
Peer Assisted Learning
 

Recently uploaded

Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsPaul Groth
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutesconfluent
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesThousandEyes
 
IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024IoTAnalytics
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...Sri Ambati
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Product School
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...Product School
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...Product School
 
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀DianaGray10
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupCatarinaPereira64715
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor TurskyiFwdays
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...Elena Simperl
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Product School
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlPeter Udo Diehl
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
 
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»QADay
 

Recently uploaded (20)

Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutes
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»
 

BIT204 2 Object Orientation

  • 1. Lecture 2 Object Orientation James Uren BIT204 Software Design
  • 2. Lecture 2 Object Orientation Object Orientated Software Modern software languages (VB.NET, C++, Java) use the software model of object orientation (OO). This means data and functionality are wrapped up in objects (or classes) that can manage their data privately and inherit properties from other objects. The objects in software design will often take their names from the nouns in the specification. For example, in a driving computer game, the Car object will contain data like the car’s weight, and functionality like ‘Accelerate’. The FordEscort object inherits these properties and implements the Car’s functionality. This means the Driver object that is calling on the Car, does not need to know the model of the car. This is called polymorphism. Note that in this case it is never possible to create a generic Car object as this class is abstract or virtual. Driver Has A Car Is A FordEscort The above representation of OO software is called UML (Universal Modelling Language). In C it would be described like this: class Driver { Driver() {} // Constructor // (called when object is created) ~Driver() {} // Destructor // (called when object is deleted) Lecture 1: Software Fundamentals BIT204: Software Design – James Uren 2