![]() |
subject > representation > abstraction > data abstraction > interface > Java interface > Runnable |
![]() ![]() | ||||
Runnable | ||||
subject | fact |
Runnable | is a subtopic of The Basics of Java | ![]() |
is an instance of Java interface | ![]() | |
Java interface | can be considered an extreme example of a horizontal framework: There is no implementation, and all the specified methods represent slots that must be filled | ![]() |
has example public interface Drawable | ![]() | |
is implemented by a class | ![]() | |
interface | cannot have any concrete methods or instance variables | ![]() |
describes a portion of the visible behaviour of a set of objects | ![]() | |
has purpose to specify a set of methods that a variety of different classes can implement polymorphically | ![]() | |
is like a class except that it does not have any executable statements - it only contains abstract methods and class variables | ![]() | |
is created using superclasses containing only abstract methods in some languages | ![]() | |
is drawn as a small circle (like a lollipop), labelled with the name of the interface or as a class rectangle, with the expression Ğinterfaceğ at the top, and (optionally) a list of supported operations in a UML diagram | ![]() | |
is implemented using the implements keyword in Java | ![]() | |
provides many of the same benefits as multiple inheritance | ![]() | |
see also interface^2 | ![]() | |
see also interface^3 | ![]() | |
should not be confused with generalizations | ![]() | |
shows a can-be-seen-as relation between the implementing class and the interface | ![]() | |
data abstraction | groups the pieces of data that describe some entity, so that programmers can manipulate that data as a unit | ![]() |
helps a programmer to cope with the complexity of data | ![]() | |
hides the details of data | ![]() |
Next Java interface: Iterator Up: Java interface