Introduction Flashcards
1
Q
- In general what are records?
- What is an example in C?
- What is the point of a record?
- Give an ADT example of a record
- What is the “state” of a record
A
- Several types of data stored together (a collection of fields, or attributes)
- a struct
- The point is to treat a number of pieces of different data types as a unit
- We could make a stack and pass it to a method as a single entity
- The set of values at any given time defines the state of that structure
2
Q
In general what is a class?
What are objects?
A

3
Q
What is an instance variables and methods?
A

4
Q
What is the difference between a class and a record?
A

5
Q
In general what is an ADT?
A

6
Q

A
- Nothing to stop outside code from changing stack internals
- The code isn’t as generic as it could be(the type of the elements inside the stack has to be defined at compile-time)
- What we want from an ADT is indepence of interface and implementation (at least in C, separating the header from the implemnetation gives an appears of that…)
- From an ADT standpoint, this is not ecapsilated(anyone can alter stack internals)
- An OO approach can trun this into an active data structure by combining the valid operations(of stack, e.g, push, pop) with the data itself
- An object takes requests from outside code, but the operations changing the state of the data structure are controlled by the object itself
- Objects are encapsulated and make strong use of data higin(thus protecting the internals)
7
Q
In general what is the idea of messaging?
A

8
Q
In general what are methods?
A

9
Q
In general what do classes do and what is their general relationship?
A

10
Q
What do classes define?
A

11
Q
What can subclasses do to any of the methods of it’s superclass?
A
use, modify, replace
12
Q
In terms of objects, what is a component?
A
One object contains another
13
Q
In general how are the structures of classes viewed?
A

14
Q
If an object is sent a message, which object/class runs the method?
A

15
Q
In general, what is binding?
A
