Treffer: Type Variability and Completeness of Interfaces in Java Applications

Title:
Type Variability and Completeness of Interfaces in Java Applications
Source:
International Journal of Software Engineering & Applications (IJSEA), Vol.5, No.3, May 2014
Publication Year:
2014
Collection:
Computer Science
Document Type:
Report Working Paper
DOI:
10.5121/ijsea.2014.5301
Accession Number:
edsarx.1407.8251
Database:
arXiv

Weitere Informationen

Interfaces are widely used as central design elements of Java applications. Although interfaces are abstract types similar to abstract classes, the usage of interfaces in Java applications may considerably differ from the usage of abstract classes. Unlike abstract classes, interfaces are meant to enable multiple inheritance in Java programs. Hence, interfaces are meant to encode shared similarities between classes belonging to different class-type hierarchies. Therefore, it is frequent to use interfaces as partial types, where an interface specifies one specific aspect or usage of its implementing classes. In this paper, we investigate interfaces' usage in Java applications from two perspectives. First, we investigate the usage of interfaces as types of classes belonging to different class-type hierarchies (i.e., interface's type variability). Second, we investigate the usage of interfaces as partial types of implementing classes (i.e., interface's type completeness).