ECOOP 2005 - Object-Oriented Programming

  • Fuhrer R
  • Tip F
  • Kieżun A
  • et al.
ISSN: 03029743
N/ACitations
Citations of this article
19Readers
Mendeley users who have this article in their library.

Abstract

Java 1.5 generics enable the creation of reusable container classes with compiler-enforced type-safe usage. This eliminates the need for potentially unsafe down-casts when retrieving elements from containers. We present a refactoring that replaces raw references to generic library classes with parameterized references. The refactoring infers actual type parameters for allocation sites and declarations using an existing framework of type constraints, and removes casts that have been rendered redundant. The refactoring was implemented in Eclipse, a popular open-source development environment for Java, and laid the grounds for a similar refactoring in the forthcoming Eclipse 3.1 release. We evaluated our work by refactoring several Java programs that use the standard collections framework to use Java 1.5's generic version instead. In these benchmarks, on average, 48.6% of the casts are removed, and 91.2% of the compiler warnings related to the use of raw types are eliminated. Our approach distinguishes itself from the state-of-the-art [8] by being more scalable, by its ability to accommodate user-defined subtypes of generic library classes, and by being incorporated in a popular integrated development environment.

Cite

CITATION STYLE

APA

Fuhrer, R., Tip, F., Kieżun, A., Dolby, J., & Keller, M. (2005). ECOOP 2005 - Object-Oriented Programming. Proc. ECOOP, 3586, 71–96. Retrieved from http://dl.acm.org/citation.cfm?id=2144892.2144898

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free