Revised: Tue Apr 05 15:03:17 CDT 2016
This page is included in the following Books:
Table of contents
- Preface
- Preview
- Generics
-
Discussion
- Purpose of framework interfaces
- What is a data type?
- Interface is a type
- Collection interface declares several methods
- An extra step
- The add method in Collection
- The add method in Set
- How do the contracts differ?
- What about the List interface?
- A major difference
- Designing a framework
- Concrete implementations
- Summary
- Miscellaneous
Preface
This module is one of a series of modules designed to teach you about Object-Oriented Programming (OOP) in general and the Java Collectionsframework in particular.
There are eight core interfaces in the Collections Framework . Each interface declares several methods and provides a contract that applies to each declaredmethod. The method declarations and their associated contracts specify the general behavior of matching methods in the classes that implement theinterfaces.
The purpose of this module is to provide a brief explanation of those interfaces.
In addition to studying these modules, I strongly recommend that you study the Collections Trail in Oracle's Java Tutorials . The modules in this collection are intended to supplement and not to replace those tutorials.
Preview
At least three things are included in a collections framework:
- interfaces
- implementations
- algorithms
This module will discuss the purpose of the interfaces in the Collections Framework. Future modules will discuss implementations and algorithms.
Introduction
In an earlier module, we learned that the Collections Framework contains eight core interfaces with the parent-child relationships shown below :
-
Collection
- Set
- SortedSet
- List
- Queue
- Deque
- Set
-
Map
- SortedMap
Generics
The code in this series of modules is written with no thought given to Generics . As a result, if you copy and compile the code, you will probably get warnings about unchecked or unsafe operations .
While you will ultimately need to understand how to use Generics, that is a very complex topic. An understanding of Generics is beyond the scope of thiscourse. Therefore, for purposes of this course, you can simply ignore those warnings.
Discussion
Purpose of framework interfaces
A collection is an object of some type, and that type is defined in a generic sense by one or more interfaces that make up the Collections Framework.
What is a data type?
All data types specify the operations that can be performed on an entity of that type. (Data types also specify the kinds of data that can be stored in an entity of that type, but that is not germane to this discussion.)