| A | B |
| struct | a record – organizes data elements that are of different types |
| class | a description of the attributes and behavior of a set of computational objects |
| fields | members – struct variables |
| anonymous | struct with no type name to represent the members of the struct |
| selector | means of accessing members of a struct |
| data abstraction | the separation between the conceptual definition of a data structure and its eventual implementation |
| abstract data type (ADT) | a form of abstraction that arises from the use of defined |
| abstract data type | ADT |
| logical view | the view an ADT gives data in terms of the operations on it and not the details of how the data are represented |
| encapsulated | when the user of an individual string cannot access its component parts except by invoking the ADT operations |
| objects – instances | a computational object bearing the attributes and behavior specified by a class |
| attribute | a property that a computational object models, such as the balance in a bank account |
| operations | actions that can be performed |
| formal specifications | describes the inputs, outputs, and any other assumptions about the data or the effects of an operation |
| class declaration section | – the sections used to declare (name) symbolic constants, data types, variables, and subprograms that are necessary to the program |
| class implementation section | usually a separate file containing the class functions |
| class member | the data and functions belonging to a class |
| data member | a data object declared within a class declaration module |
| member function | the functions in a class |
| public member | a data member or member function that is accessible to any program component that uses the class |
| private member | a data member or member function that is accessible only within the scope of a class declaration |
| class constructor | a member function used to create and initialize an instance of a class |
| accessors | member functions which return the values of attributes |
| modifiers | member functions which modify the value of attributes |
| default constructor | should provide reasonable initial values for the attributes of an object when the user does not specify them |
| initial value constructor | when the user need to declare a variable with special attributes |
| copy constructor | – is run whenever an object is passed by value as a parameter to a function |
| shallow copy | the computer created constructor created when a copy constructor has not been declared |
| receiver object | a computational object to which a request is sent for a service |
| parameter object | the data members of the object to be copied |
| const function | method of declaring an accessor functions so no changes occur |
| polymorphic | when one operator symbol or function identifier has many meanings |
| overloading an operation | the process of using the same operator symbol or identifier to refer to many different functions |
| l-value | a computational object capable of being the target of an assignment statement |
| cascade | cascade – more than two related assignment operations (a = b) =c |
| dereference operator | * - returns the receiver object |
| specialize | enhance a module with extra data or functions |
| server | a computational object that provides a service to another computational object |
| client | a computational object that receives a service from another computational object |
| sender | a computational object tat requests a service from another computational object |
| receiver | a computational object to which a request is sent for a service |
| base class | the class from which a derived class inherits attributes and behavior |
| behavior | the set of actions that a class of objects supports |
| derived class | a class that inherits attributes and behavior from other classes |
| free functions | nonmember functions for manipulating rational numbers and consist of several standard operators |
| access specifier | declares whether the public members of the base class are public or private in the derived class |
| inheritance | – the process by which a derived class can reuse attributes and behavior defined in a base class |
| class hierarchy | shows the relationship between classes |
| protected member | a data member or member function that is accessible only within the scope of a class declaration or within the class declaration of a derived class |