O'Reilly logo

Java Enterprise in a Nutshell, Third Edition by William Crawford, Jim Farley

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Interface Declarations

An IDL interface is just a collection of data attributes and methods that define the semantics of the interface. Declaring an interface is another way to create a new data type in IDL, but unlike structs and unions, an interface can have both data members and methods that can be called on objects of its type. An interface is also a name-scoping construct, similar to a module. You can declare an IDL interface and simply include a set of constants that you want associated with that interface name. In this case, you have to specify the interface scope in order to refer to the constants from within other scopes.

An interface consists of the following elements:

// IDL
interface identifier [: inheritance spec] {
     interface body
};

The interface identifier can be any valid IDL identifier. The body of the interface can contain any of the following constructs:

  • A user-defined type (struct, union, typedef, enum)

  • A constant declaration

  • An interface-specific exception declaration

  • Data attributes

  • Methods or operations

We’ve already seen the syntax for the first three of these items in earlier sections of this IDL overview. They become part of an interface simply by being declared within the braces of the body of the interface. In the next few sections, we’ll see how to define interface attributes and methods , and then we’ll look at how inheritance of IDL interfaces works.

Attributes

Attributes are data members that belong to interfaces. To readers familiar with JavaBeans, declaring ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required