How do Java']Java programs use inheritance? An empirical study of inheritance in Java']Java software

被引:0
|
作者
Tempero, Ewan [1 ]
Noble, James [2 ]
Melton, Hayden [1 ]
机构
[1] Univ Auckland, Dept Comp Sci, Auckland, New Zealand
[2] Victoria Univ Wellington, Sch Math Stat & Comp Sci, Wellington, New Zealand
关键词
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Inheritance is a crucial part of object-oriented programming, but its use in practice, and the resulting large-scale inheritance structures in programs, remain poorly understood. Previous studies of inheritance have been relatively small and have generally not considered issues such as Java's distinction between classes and interfaces, nor have they considered the use of external libraries. In this paper we present the first substantial empirical study of the large-scale use of inheritance in a contemporary 00 programming language. We present a Suite of structured metrics for quantifying inheritance in Java programs. We present the results of performing a corpus analysis using those metrics to over 90 applications consisting of over 100,000 separate classes and interfaces. Our analysis finds higher use of inheritance than anticipated, variation in the use of inheritance between interfaces and classes, and differences between inheritance within application types compared with inheritance from external libraries.
引用
收藏
页码:667 / +
页数:4
相关论文
共 50 条
  • [21] How do I use CORBA from Java']Java?
    Berg, C
    DR DOBBS JOURNAL, 1997, 22 (01): : 100 - +
  • [22] Not whether Java']Java but how Java']Java
    Wallace, C
    Martin, P
    ASIA PACIFIC SOFTWARE ENGINEERING CONFERENCE AND INTERNATIONAL COMPUTER SCIENCE CONFERENCE, PROCEEDINGS, 1997, : 517 - 518
  • [23] Finjan - Security for Java']Java programs and other software
    Brown, E
    FORTUNE, 1997, 136 (01) : 84 - 86
  • [24] The use of traces for inlining in Java']Java programs
    Bradel, BJ
    Abdelrahman, TS
    LANGUAGES AND COMPILERS FOR HIGH PERFORMANCE COMPUTING, 2005, 3602 : 179 - 193
  • [25] Documenting pattern use in Java']Java programs
    Torchiano, M
    INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, PROCEEDINGS, 2002, : 230 - 233
  • [26] How Do Java']Java Methods Grow?
    Steidl, Daniela
    Deissenboeck, Florian
    2015 IEEE 15TH INTERNATIONAL WORKING CONFERENCE ON SOURCE CODE ANALYSIS AND MANIPULATION (SCAM), 2015, : 151 - 160
  • [27] How do I print in Java']Java?
    Berg, C
    DR DOBBS JOURNAL, 1997, 22 (11): : 110 - +
  • [28] An Empirical Study on the Use and Misuse of Java']Java 8 Streams
    Khatchadourian, Raffi
    Tang, Yiming
    Bagherzadeh, Mehdi
    Ray, Baishakhi
    FUNDAMENTAL APPROACHES TO SOFTWARE ENGINEERING (FASE 2020), 2020, 12076 : 97 - 118
  • [29] Verifying Nested Lock Priority Inheritance in RTEMS with Java']Java Pathfinder
    Gadia, Saurabh
    Artho, Cyrille
    Bloom, Gedare
    FORMAL METHODS AND SOFTWARE ENGINEERING, ICFEM 2016, 2016, 10009 : 417 - 432
  • [30] How do I use the Java']Java plug-in tool?
    Jennings, M
    DR DOBBS JOURNAL, 2002, 27 (01): : 93 - +