Study your flashcards anywhere!

Download the official Cram app for free >

  • Shuffle
    Toggle On
    Toggle Off
  • Alphabetize
    Toggle On
    Toggle Off
  • Front First
    Toggle On
    Toggle Off
  • Both Sides
    Toggle On
    Toggle Off
  • Read
    Toggle On
    Toggle Off

How to study your flashcards.

Right/Left arrow keys: Navigate between flashcards.right arrow keyleft arrow key

Up/Down arrow keys: Flip the card between the front and back.down keyup key

H key: Show hint (3rd side).h key

A key: Read text to speech.a key


Play button


Play button




Click to flip

16 Cards in this Set

  • Front
  • Back
  • 3rd side (hint)
The process by which on portion of a program is isolated from other portions with access limited to a generally small number of methods.
A mechanism used in object-oriented programming to encapsulate a block of code and/or data.
The general term used to describe a single service provided by (or behavior shown by) a class.
The collection of all methods provided by a class. (Warning: interface is also a keyword in Java that has a similar, but slightly different meaning.)
Programming by Contract
The idea that interfaces are specified in terms of contracts wherein a class that provides a service (or more precisely, the programmer of such a class) agrees to provide particular services for clients provided that the client first provides certain data (often expressed as preconditions.)
The stipulations put on the data provided to a method. Unless these stipulations are met, the programmer of the method is under no obligation to do anything. An assertion (precisely worded comment) that specifies what must be true for a method to succeed in its task; usually written in terms of the parameters.
A description of the results of a method invocation. It is the job of the programmer of the method to ensure that these results occur whenever the associated preconditions have been met. As assertion that specifies what will be true when a method terminates; usually written in terms of the return value or change of state.
Information Hiding
The idea that someone who used a block of code needs to know what the code does but does not need to know how it does it. Information hiding promotes reusable code and is therefore a desirable feature in a software system.
A step-by-step process for solving a problem,
A component of object-oriented design that permits data, methods, and/or algorithms to be shared among different data types that are related.
Runtime Polymorphism
A component of object-oriented design that causes each object in a system to behave in a specialized manner even when its properties are otherwise known only in a general way.
A description of data and/or methods that a class provides for use by software from outside of the class.
A description of data and/or methods that a class provides only for use within that class
A description of data and/or methods that a class provides only for use within itself and any inherited classes.
The degree to which a portion of a program (i.e. a class) can be viewed as an independent entity that performs a single task. Cohesion in program units is highly desirable.
The degree to which one portion of a program depends upon how another portion of the program does its job. Since high degrees of coupling make it difficult to maintain large programs, high degrees of coupling are to be avoided if possible.