Is Collection
an Interface in the Java API?
True.
The Collection
interface is a fundamental part of the Java Collections Framework. It defines a common set of operations that can be performed on different types of data structures, such as lists, sets, and queues.
Here's why Collection
is an interface:
- Abstract concept:
Collection
represents a general concept of a group of objects. It doesn't specify how those objects are organized or stored. - Implementation details: Specific implementations like
ArrayList
,HashSet
, orLinkedList
provide the actual data structure and how elements are managed. - Polymorphism: By using the
Collection
interface, you can write code that works with different data structures without knowing the exact implementation. This promotes code reusability and flexibility.
Example:
Collection names = new ArrayList<>();
names.add("Alice");
names.add("Bob");
names.add("Charlie");
for (String name : names) {
System.out.println(name);
}
In this example, we create a Collection
of String
objects using an ArrayList
. Although the specific implementation is ArrayList
, we can still access the common methods defined by the Collection
interface like add
and forEach
.
In summary, the Collection
interface in the Java API defines a contract for working with groups of objects, leaving the implementation details to concrete classes.