Interface (object-oriented programming)
Appearance
In computer science's object-oriented programming, a protocol (Java: interface) is what unrelated objects use to communicate with each other. These are definitions of methods and values.
See also: class, encapsulation