<< Chapter < Page Chapter >> Page >

Interface is a type

An object in Java can often be considered to be of several different types. One of those types is determined by any interfaces implemented by the class fromwhich the object was instantiated. Framework collection objects in Java are instantiated from classes that implement the core interfaces of the CollectionsFramework.

Thus, a Java interface in the Collections Framework specifies the type of such an object, and provides a generic representation of the operations thatapply across different implementations of the interface.

Collection interface declares several methods

The Collection interface declares several methods. This is not unusual. From a technical standpoint, all interfaces declare none, one, or moremethods. Most interfaces declare multiple methods. (Interfaces can also declare constants, but that is not germane to this discussion.)

In general, there is no technical requirement for a specification of the behavior of the interface methods when implemented in a class. In fact, becausea method that is declared in an interface is abstract, it specifically refrains from defining the behavior of the method. The interface definition simplydeclares the interfaces for all the methods that it declares.

We have now arrived at one of the differences that distinguish the Collections Framework from "just a bunch of interfaces." That difference is contracts .

An extra step

The Oracle documentation for the Collection interface goes a step beyond the minimum technical requirements for an interface. Thedocumentation describes the general behavior that must be exhibited by each of the methods belonging to an object instantiated from a class that implements the Collection interface. This is sometimes referred to as a contract .

Therefore, if you define a class that implements the Collection interface in a manner consistent with the Collections Framework , it is important that you make certain that each of your methods behaves as described in theOracle documentation. In other words, you must be careful to comply with the contractdefined for those methods. If you don't do that, a user can't rely on objects instantiated from your class to exhibit proper behavior.

The add method in Collection

For example, the Collection interface declares a method named add that receives an incoming reference of a generic type (see Generics ) and returns a boolean .. Here is some text from the Oracle documentation describing the required behavior (contract) of the add method for any class that implements the Collection interface.

"Ensures that this collection contains the specified element (optional operation). Returns true if this collection changed as a result of the call. (Returns false if this collection does not permit duplicates and already contains the specified element.)

Collections that support this operation may place limitations on what elements may be added to this collection. In particular, some collections will refuse to add null elements, and others will impose restrictions on the type of elements that may be added.

Questions & Answers

What are types of cell
Nansoh Reply
how can I get this book
Gatyin Reply
what is lump
Chineye Reply
what is cell
Maluak Reply
what is biology
Maluak
what's cornea?
Majak Reply
what are cell
Achol
Explain the following terms . (1) Abiotic factors in an ecosystem
Nomai Reply
Abiotic factors are non living components of ecosystem.These include physical and chemical elements like temperature,light,water,soil,air quality and oxygen etc
Qasim
what is biology
daniel Reply
what is diffusion
Emmanuel Reply
passive process of transport of low-molecular weight material according to its concentration gradient
AI-Robot
what is production?
Catherine
Pathogens and diseases
how did the oxygen help a human being
Achol Reply
how did the nutrition help the plants
Achol Reply
Biology is a branch of Natural science which deals/About living Organism.
Ahmedin Reply
what is phylogeny
Odigie Reply
evolutionary history and relationship of an organism or group of organisms
AI-Robot
ok
Deng
what is biology
Hajah Reply
cell is the smallest unit of the humanity biologically
Abraham
ok
Achol
what is biology
Victoria Reply
what is biology
Abraham
Got questions? Join the online conversation and get instant answers!
Jobilize.com Reply

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Object-oriented programming (oop) with java. OpenStax CNX. Jun 29, 2016 Download for free at https://legacy.cnx.org/content/col11441/1.201
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Object-oriented programming (oop) with java' conversation and receive update notifications?

Ask