Chapter 11 Flashcards
What is abstraction?
A representation of an entity with only most significant attributes
What is process abstraction
Emphaize logical structure but hide low level detail ( increase readability)
What is data abstraction?
Abstract data types
What are the 2 conditions for ADTs?
Representation + operations is defined in a single place (class)
Encapsulation. Only operations is those provided in the “class”
What is an advantage of classes?
Organization, modifiability, each ADT can be compiled in own file
Advantage of encapsulation?
Reliability ( cant access objects of the type)
Name conflicts are less likely
What is the requirements for ADTs?
Syntactic unit ( encapsulation definition )
Methods to make parts of ADT visible but hide definitions
What are some design issues for ADTs?
Can abstract parameters be parameterized?
What access controls are provided
Is the Type physically separate from its implementation?
On what is ADT support based in C++?
Simula 67 classes + C structs
What do all class instances share in C++?
A single copy of the member function
What does instance of a class have?
Own copy of the class data members.
What is the file extension of compiled Java code?
.class files
What are Parameterized ADTs also known as?
Generic classes (template classes)