p.16
Classes and Objects: Definitions and Examples
What behaviors can the Bank Account object perform?
deposit() and withdraw().
p.32
Instance Variables and Methods in Java
What do instance methods provide in classes?
They provide the interface of classes.
p.44
Object References and Memory Management
What does 'account1' represent in the statement 'Account account1 = new Account(100);'?
It is an object reference to an instance of the Account class.
p.6
Defensive Programming and Testing Techniques
When is the exam scheduled?
In January, with the date to be confirmed (TBC).
p.39
Classes and Objects: Definitions and Examples
What type of variable is 'accountNum' in the Account class?
It is a private String variable.
p.33
Instance Variables and Methods in Java
What is included in the parameter list of a method?
The type and name of parameters.
p.29
Instance Variables and Methods in Java
What is an instance variable?
An instance variable can hold a single value or an object.
p.44
Object References and Memory Management
What is the syntax to create a new object of the Account class in Java?
Account account1 = new Account(100);
p.29
Instance Variables and Methods in Java
What is the importance of information hiding in industry?
It is essential for maintaining encapsulation and security in software design.
p.28
Classes and Objects: Definitions and Examples
What must a constructor have in relation to the class name?
The constructor must have the same name as the class name.
p.42
Classes and Objects: Definitions and Examples
What is required to create instances of a class?
We need to call the constructor of the class using the new keyword.
p.41
Classes and Objects: Definitions and Examples
How can an instance of 'Account' be declared?
Account account1 = new Account(100);
p.40
Classes and Objects: Definitions and Examples
How do we create an object in Java?
By calling the constructor of the class using the new keyword.
p.25
Instance Variables and Methods in Java
What are the instance variables in the Account class?
balance (double) and accountNum (String).
p.40
Classes and Objects: Definitions and Examples
What is the purpose of the 'new' keyword in Java?
It is used to create new instances of a class.
p.31
Instance Variables and Methods in Java
How does the deposit method affect the balance?
It increases the balance by the specified amount.
p.34
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
Is the following method overload valid: public void deposit(double amount) and public void deposit(double amount, double interest)?
Yes, because they have a different number of parameters.
p.37
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What does abstraction allow us to do with classes?
Create one class to represent several objects.
p.27
Classes and Objects: Definitions and Examples
What are the instance variables in the Account class?
balance (double) and accNumb (String).
p.22
Classes and Objects: Definitions and Examples
What is the state of a bank Account class?
Attributes such as account number and balance.
p.39
Instance Variables and Methods in Java
What is the function of the setBalance method?
To update the account's balance with a new value.
p.10
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
Why is learning programming considered a valuable life skill?
It enhances creativity, systematic thinking, and collaborative work.
p.21
Classes and Objects: Definitions and Examples
What operations (behavior) can be performed on the class Time?
Set Hours, Set Minutes, and Set Seconds.
p.15
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What is one advantage of Object-Oriented (OO) programming?
People think in terms of objects.
p.38
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
How are the variables of a class accessed in encapsulation?
Only through the methods of their current class.
p.15
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
Why are OO models considered easy to understand?
Because they reflect real-world concepts and objects.
p.31
Instance Variables and Methods in Java
What does the withdraw method do?
It decreases the balance by the specified amount.
p.35
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What does the 'private' access modifier restrict?
It restricts access to the entity only from within the class itself.
p.35
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What is the general practice for instance variables in terms of access modifiers?
Instance variables are generally declared as private.
p.5
Concurrency and Multithreading in OOP
What principle should be described and justified in OOP?
Concurrency principle and how threads can be implemented.
p.48
Object References and Memory Management
What is the difference between values and references?
Values are actual data, while references point to the location of the data in memory.
p.20
Classes and Objects: Definitions and Examples
What is Ben in the context of object-oriented programming?
A Tangible Object instance of the class Person.
p.21
Classes and Objects: Definitions and Examples
What is 11:00:00 in the context of Object Oriented Programming?
It is a time and an instance of the class Time.
p.21
Classes and Objects: Definitions and Examples
What are the attributes (state) of the class Time?
Hours, Minutes, and Seconds.
p.8
Designing Classes and UML Representation
Who are the authors of 'Design Patterns: Elements of Reusable Object-Oriented Software'?
Gamma, Helm, Johnson, Vlissides.
p.26
Classes and Objects: Definitions and Examples
What is the convention for naming a class in Java?
A class name always starts with a capital letter.
p.15
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
How do OO models relate to reality?
OO models map to reality.
p.31
Classes and Objects: Definitions and Examples
What is the purpose of the Account class?
To manage a bank account's balance and transactions.
p.25
Classes and Objects: Definitions and Examples
What is the purpose of the constructors in the Account class?
To initialize objects and create instances.
p.18
Instance Variables and Methods in Java
What are instance methods?
Operations defined in a class that can be performed on instances of that class.
p.23
Designing Classes and UML Representation
What does the 'close' method do in the BankAccount class?
It closes the bank account.
p.35
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What is the general practice for instance methods and constructors in terms of access modifiers?
Instance methods and constructors are generally declared as public.
p.32
Instance Variables and Methods in Java
Who can access public instance methods?
Members of other classes.
p.7
Defensive Programming and Testing Techniques
What is plagiarism defined as?
An act of fraud involving stealing someone else's work and lying about it afterward.
p.7
Defensive Programming and Testing Techniques
Is it acceptable to copy code from external sources?
No, you should not copy the code from external sources.
p.44
Instance Variables and Methods in Java
What type of variable is 'balance' in the Account class?
It is an instance variable representing the account balance.
p.8
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What is the focus of 'The Object Oriented Thought Process'?
Object-oriented programming concepts.
p.42
Classes and Objects: Definitions and Examples
How do you create a new instance of the Account class with a parameter?
account2 = new Account(100);
p.45
Object References and Memory Management
What is a reference in the context of a variable?
A pointer or a form of memory address.
p.45
Object References and Memory Management
Does a variable hold the object itself?
No, it holds a reference to the object.
p.18
Classes and Objects: Definitions and Examples
What does behavior refer to in a class?
The actions that an object can perform, such as Speak, Deposit, Work, etc.
p.38
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What methods are provided to modify and view variable values in encapsulation?
Public setter and getter methods.
p.2
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What principles does the module teach to apply?
Principles of object-oriented programming, OOP analysis, and design.
p.12
Designing Classes and UML Representation
What is a Model in the context of programming?
A representation of a real-world system or concept.
p.3
Graphical User Interfaces (GUIs) in OOP
What is the role of Graphical User Interfaces (GUIs) in OOP?
To provide a visual interface for user interaction with applications.
p.46
Object References and Memory Management
What does it mean when we say 'they are the same object' in the context of object references?
It means that the object reference points to the same memory location for both the method and the caller.
p.13
Introduction to Object Oriented Programming (OOP)
What does 'Object Oriented' programming typically create?
A model of a part of the 'real' world.
p.39
Instance Variables and Methods in Java
What does the getAccountNum method return?
It returns the account number.
p.33
Instance Variables and Methods in Java
What does the method name in a method declaration represent?
It is the name you choose for the method.
p.13
Classes and Objects: Definitions and Examples
What is an object that belongs to a class called?
An instance of that class.
p.28
Classes and Objects: Definitions and Examples
What rules apply to constructor overloading?
The same rules that apply for method overloading.
p.9
Defensive Programming and Testing Techniques
What is the importance of attending lectures and tutorials on time?
To ensure you do all tutorial exercises and in-lecture exercises.
p.4
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
How can programming problems be approached according to the course objectives?
By decomposing them using object-oriented analysis and design.
p.18
Classes and Objects: Definitions and Examples
What are attributes in a class?
Characteristics that describe the class, such as Name, Age, Balance, Salary, etc.
p.30
Instance Variables and Methods in Java
What does the 'getBalance' method do?
Prints the balance of the account.
p.27
Classes and Objects: Definitions and Examples
What is the purpose of a constructor in a class?
To initialize instance variables when an object is created.
p.48
Classes and Objects: Definitions and Examples
What is the purpose of a constructor?
To initialize an object when it is created.
p.27
Classes and Objects: Definitions and Examples
What does the constructor 'public Account(double initialBalance, String accountNum)' do?
It initializes the balance and account number for the Account object.
p.37
Classes and Objects: Definitions and Examples
What methods are typically included in a BankAccount class?
withdraw(), deposit(), getBalance(), close().
p.3
Designing Classes and UML Representation
What is UML used for in OOP?
To design classes and represent the structure of a system.
p.36
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What is polymorphism in OOP?
The ability of different classes to be treated as instances of the same class through a common interface.
p.17
Classes and Objects: Definitions and Examples
What is a class in object-oriented programming?
A blueprint or template for creating objects (instances).
p.39
Instance Variables and Methods in Java
What is the purpose of the getBalance method in the Account class?
To return the current balance of the account.
p.44
Object References and Memory Management
What is the purpose of the 'new' keyword in Java?
It is used to create a new object instance.
p.41
Classes and Objects: Definitions and Examples
What is the type 'Account' in programming?
A new type that allows for user-defined declarations.
p.9
Defensive Programming and Testing Techniques
Where can you find the PDF of the lecture materials?
On Blackboard before the lecture.
p.21
Classes and Objects: Definitions and Examples
What does the identity of an object in the class Time refer to?
It would have a unique ID in the model.
p.30
Instance Variables and Methods in Java
What do instance methods represent in an object?
The behavior and state alteration of an object.
p.15
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What makes OO models easy to develop?
They map to reality and align with how people think.
p.31
Instance Variables and Methods in Java
What type of variable is 'balance' in the Account class?
It is a private double variable.
p.2
Classes and Objects: Definitions and Examples
What does the module 5COSC001W introduce?
The concepts of objects and classes.
p.2
Java Programming Language and OOP Concepts
What is the aim of the module regarding programming skills?
To extend the programming skills acquired in the first year.
p.12
Designing Classes and UML Representation
What does Real World Model refer to?
A conceptual framework that mirrors real-life entities and their interactions.
p.12
Designing Classes and UML Representation
What does Design involve in programming?
Creating a blueprint for how a program will function and be structured.
p.3
Instance Variables and Methods in Java
What is the significance of Input/Output and streams in programming?
They are essential for reading from and writing to various data sources.
p.16
Classes and Objects: Definitions and Examples
What is an object in programming?
An object is something tangible (like a person or a pen) or something that can be apprehended intellectually (like time or date).
p.13
Classes and Objects: Definitions and Examples
What are the components of the model in Object Oriented programming?
Objects that can be identified in the problem.
p.14
Classes and Objects: Definitions and Examples
What does the term 'interaction' refer to in the OO model?
The relationships or actions between objects.
p.19
Classes and Objects: Definitions and Examples
Give an example of an object and its class.
Ben is an instance of the class Persons.
p.42
Classes and Objects: Definitions and Examples
What must be considered when calling a constructor?
We need to call the constructor with the correct parameters and types.
p.38
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What is encapsulation in OOP?
Wrapping the data (variables) and code (methods) together as a single unit.
p.34
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What is method overloading?
The ability to have more than one method with the same name in the same class.
p.5
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What is a key practice in the development of object-oriented (OO) software?
Identifying and justifying good practices.
p.5
Java Programming Language and OOP Concepts
What should you apply when working with OO programming languages?
Acquired knowledge of concepts and programming languages based on OO principles.
p.5
Designing Classes and UML Representation
What are the main steps in creating an application based on OOP?
Design, implement, and test the application.
p.24
Classes and Objects: Definitions and Examples
What is the purpose of the BankAccount class?
To manage bank account operations such as balance management and transactions.
p.24
Instance Variables and Methods in Java
What method would you use to withdraw money from a BankAccount?
withdraw(amount: double): void.
p.11
Classes and Objects: Definitions and Examples
What logic is used in Object 3?
Print String concatenation.
p.36
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What is the purpose of abstraction in OOP?
To hide complex implementation details and show only the essential features of an object.
p.17
Classes and Objects: Definitions and Examples
What does a class define for its instances?
The structure and behaviour that its instances (objects) will have.
p.47
Object References and Memory Management
What happens when a variable is set to null?
No methods can be called on it since it does not reference any object.
p.19
Classes and Objects: Definitions and Examples
What is an object in programming?
An object is something tangible (like Ben or a Ferrari) or something that can be apprehended intellectually (like Time or Date).
p.28
Classes and Objects: Definitions and Examples
Can a class have more than one constructor?
Yes, a class can have more than one constructor.
p.10
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
How does programming enhance creativity?
It involves problem-solving skills.
p.9
Defensive Programming and Testing Techniques
What should you do if you encounter problems during the course?
Flag any problems you have early.
p.4
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What should you be able to do after completing the course?
Tackle more complicated programming problems.
p.26
Classes and Objects: Definitions and Examples
What is the standard structure of a class declaration in Java?
public class class_name { variable - declarations, constructor - declarations, method - declarations }
p.34
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What must be different for overloaded methods?
They must have a different number of parameters or parameters of different types.
p.40
Classes and Objects: Definitions and Examples
How is object creation in Java similar to variable declaration?
Both involve declaring a variable and assigning it a value, like 'int x = 5' and 'Account account1 = new Account(100);'.
p.25
Instance Variables and Methods in Java
What does the deposit method do in the Account class?
It adds a specified amount to the account balance.
p.24
Instance Variables and Methods in Java
What are the instance variables of the BankAccount class?
balance (double) and accountNum (String).
p.24
Instance Variables and Methods in Java
How can you check the balance of a BankAccount?
By using the getBalance(): double method.
p.12
Defensive Programming and Testing Techniques
What is the purpose of Program Analysis?
To evaluate and understand the structure and behavior of a program.
p.3
Concurrency and Multithreading in OOP
What is concurrency in programming?
The ability to execute multiple sequences of operations simultaneously.
p.32
Instance Variables and Methods in Java
How can different objects communicate with each other?
Via their instance methods.
p.6
Defensive Programming and Testing Techniques
When will the lab-based practical assessment take place?
During the seminar in week 11.
p.7
Defensive Programming and Testing Techniques
Can you use ChatGPT to generate code for academic purposes?
No, you cannot use ChatGPT to generate code.
p.9
Defensive Programming and Testing Techniques
What is expected regarding attendance at lectures and tutorials?
You must attend all lectures and tutorials (seminars).
p.33
Instance Variables and Methods in Java
What is the purpose of the deposit method?
To add a specified amount to an account.
p.45
Object References and Memory Management
What does a variable of a class type hold?
A reference to an object.
p.26
Classes and Objects: Definitions and Examples
What does a class declaration typically contain?
Declarations of instance methods and instance variables.
p.40
Classes and Objects: Definitions and Examples
What is the syntax to create an instance of the Account class?
Account account1 = new Account(100);
p.35
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What is an access modifier in programming?
It is a declaration that defines the accessibility of an instance variable, constructor, or method.
p.4
Java Programming Language and OOP Concepts
What programming language knowledge is expected to improve after this course?
Knowledge of the Java programming language.
p.48
Classes and Objects: Definitions and Examples
What is a class declaration?
It defines a new class in programming.
p.18
Instance Variables and Methods in Java
What are instance variables?
Properties or data that hold the state of an object in a class.
p.37
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What is the main focus of abstraction in OOP?
To focus on the essential quality of an object and discard what is irrelevant.
p.37
Classes and Objects: Definitions and Examples
What are the attributes of the BankAccount class?
balance (double) and idNumber (String).
p.3
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What are fundamental design patterns?
Reusable solutions to common problems in software design.
p.36
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What is encapsulation in OOP?
The bundling of data and methods that operate on that data within a single unit or class, restricting access to some components.
p.47
Object References and Memory Management
What does the null keyword represent in programming?
It indicates that no object is referenced.
p.6
Defensive Programming and Testing Techniques
What formats are included in the exam assessment?
Multiple choice questions, fill-in the blanks, analyzing code snippets, and filling UML diagrams.
p.7
Defensive Programming and Testing Techniques
What should you not do with code from other students?
Do not copy the code from other students.
p.39
Instance Variables and Methods in Java
What does the setAccountNum method do?
It sets a new account number for the account.
p.42
Classes and Objects: Definitions and Examples
How do you create a new instance of the Account class without parameters?
account1 = new Account();
p.10
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What type of thinking does programming teach?
Systematic thinking and logical reasoning.
p.4
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What programming concepts should you be familiar with after the course?
Most of the object-oriented programming concepts.
p.45
Object References and Memory Management
What happens to an object if its variable goes out of scope?
The object can still exist if referenced by another variable.
p.25
Instance Variables and Methods in Java
What is the purpose of the close() method in the Account class?
To perform actions related to closing the account.
p.31
Instance Variables and Methods in Java
What happens when the close method is called?
It sets the balance to zero.
p.48
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What is method overloading?
Defining multiple methods with the same name but different parameters.
p.12
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
How does Abstract form relate to Code?
It serves as a conceptual framework that guides the implementation of the actual code.
p.3
Defensive Programming and Testing Techniques
What is defensive programming?
A practice aimed at improving software robustness by anticipating potential errors.
p.36
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What is inheritance in OOP?
A mechanism where a new class derives properties and behavior from an existing class.
p.46
Object References and Memory Management
What happens if an object reference is passed as a parameter to a method?
Changing the object inside the method changes the object outside the method.
p.29
Instance Variables and Methods in Java
Why are instance variables typically defined as private?
To facilitate information hiding between classes.
p.19
Classes and Objects: Definitions and Examples
What is the relationship between an object and a class?
An object is an instance of a class.
p.39
Classes and Objects: Definitions and Examples
What type of variable is 'balance' in the Account class?
It is a private double variable.
p.19
Classes and Objects: Definitions and Examples
What do we want our class to represent?
A grouping of conceptually-related state and behavior.
p.43
Instance Variables and Methods in Java
How do you call an instance method on an object?
Using the syntax object_name.method_name(arguments).
p.43
Instance Variables and Methods in Java
What is the purpose of the deposit method in the example?
To add money to the account, e.g., account1.deposit(1000).
p.18
Classes and Objects: Definitions and Examples
What is a class in programming?
A blueprint for creating objects, such as Person, BankAccount, Employee, Time, etc.
p.30
Instance Variables and Methods in Java
What does the 'deposit' method do in the Account example?
Increases the balance of the account by a specified amount.
p.40
Classes and Objects: Definitions and Examples
What does the line 'Account account1 = new Account(100);' do?
It declares a variable named account1 of type Account and assigns it a new Account instance with a value of 100.
p.35
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What does the 'public' access modifier allow?
It allows the entity to be accessed by other classes.
p.45
Object References and Memory Management
Can one object be referenced by multiple references?
Yes, one object can be referenced by several references and variables.
p.31
Instance Variables and Methods in Java
What is the return type of the getBalance method?
It returns a double value representing the current balance.
p.48
Classes and Objects: Definitions and Examples
What does object assignment refer to?
Assigning one object to another.
p.24
Instance Variables and Methods in Java
What does the close() method do in the BankAccount class?
It closes the bank account.
p.16
Classes and Objects: Definitions and Examples
What are the three main characteristics of an object?
State, behavior, and identity.
p.8
Designing Classes and UML Representation
Which book discusses design patterns in object-oriented software?
Design Patterns: Elements of Reusable Object-Oriented Software.
p.43
Instance Variables and Methods in Java
What does the withdraw method do in the context of the example?
It removes money from the account, e.g., account2.withdraw(250).
p.43
Instance Variables and Methods in Java
What action does the close method perform?
It closes the account, e.g., account2.close().
p.30
Instance Variables and Methods in Java
What is the purpose of the 'withdraw' method in the Account example?
Decreases the balance of the account by a specified amount.
p.26
Classes and Objects: Definitions and Examples
Is the order of declarations in a class important?
No, the order is not important, but there is a standard way.
p.34
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
Is the following method overload valid: public void deposit(double amount) and public void deposit(double money)?
No, because they have the same parameter type.
p.22
Classes and Objects: Definitions and Examples
What are the behaviors of a bank Account class?
Operations like Withdraw, Deposit, Get balance, and Close account.
p.3
Introduction to Object Oriented Programming (OOP)
What does computational modeling involve?
Creating abstract models to simulate real-world processes.
p.27
Classes and Objects: Definitions and Examples
What is the significance of having multiple constructors in a class?
It allows for different ways to initialize an object.
p.3
Defensive Programming and Testing Techniques
What is unit testing?
A software testing method where individual components are tested for correctness.
p.12
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What is meant by Abstract form in programming?
A simplified representation that focuses on essential characteristics while ignoring irrelevant details.
p.3
Classes and Objects: Definitions and Examples
What is the purpose of classes and objects in OOP?
They are fundamental building blocks for creating and organizing code.
p.16
Classes and Objects: Definitions and Examples
What are the attributes of the Bank Account object?
Number: 01 23 45, Balance: 200 £.
p.3
Key Principles of OOP: Abstraction, Encapsulation, Inheritance, Polymorphism
What are the key principles of Object Oriented Programming?
Inheritance, polymorphism, abstraction, and encapsulation.