Advertisement

JIT’99 pp 233-242 | Cite as

Lava Spracherweiterungen für Delegation in Java

  • Pascal Costanza
  • Günter Kniesel
  • Armin B. Cremers
Conference paper
  • 39 Downloads
Part of the Informatik aktuell book series (INFORMAT)

Zusammenfassung

Im Gegensatz zu objektorientierten Programmiersprachen, die Vererbung auf Klassenebene realisieren, gibt es Sprachen, die dieses Konzept ausschließlich auf Objektebene verwirklichen. Dabei können „Unterobjekte" nicht nur Methoden ihrer „Oberobjekte“ lokal „überschreiben" (overriding), sondern die Oberobjekte lassen sich auch zur Laufzeit gegen andere Objekte austauschen, wodurch sich leicht dynamische Verhaltensänderungen modellieren lassen.

Anhand einer Erweiterung der Sprache Java haben wir nun gezeigt, daßsich das Konzept der objektbasierten Vererbung in bestehenden klassenbasierten, streng typisierten Sprachen effizient und bei Bewahrung der Typsicherheit implementieren läßt.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Literatur

  1. [Arnold 96]
    K. Arnold und J. Gosling, The Java Programming Language, Addison—Wesley, 1996.Google Scholar
  2. [Chambers 92]
    C. Chambers, Object—Oriented Mult—Methods in Cecil, in Proceedings of ECOOP’92, Utrecht, Niederlande, Juli 1992.Google Scholar
  3. [Costanza 98]
    P. Costanza, Lava: Delegation in einer streng typisierten Programmiersprache —Sprachdesign und Compiler, Diplomarbeit, Universität Bonn, 1998.Google Scholar
  4. [Ellis 95]
    M.A. Ellis und B. Stroustrup, The Annotated C++ Reference Manual, Addison—Wesley, 1995.Google Scholar
  5. [Gamma 95]
    E. Gamma, R. Helm, R. Johnson und J. Vlissides, Design Patterns: elements of reusable object—oriented software, Addison—Wesley, 1995.Google Scholar
  6. [Gottlob 96]
    G. Gottlob, M. Schrefl und B. Rock, Extending objec—oriented systems with roles, in ACM Transactions on Information Systems, Vol. 14, Seiten 268–196, 1996.Google Scholar
  7. [Kniesel 95]
    G. Kniesel, Implementation of Dynamic Delegation in Strongly Typed Inheritance—Based Systems, Technischer Bericht, Institut für Informatik III, Universität Bonn, 1995.Google Scholar
  8. [Kniesel 96]
    G. Kniesel, Objects don’t migrate! Perspectives on Objects with Roles, Technischer Bericht, Institut für Informatik III, Universität Bonn, Bonn, April 1996.Google Scholar
  9. [Kniesel 98]
    G. Kniesel, Delegation for Java —API or Language Extension?, Technischer Bericht, Universität Bonn, 1998.Google Scholar
  10. [Kniesel 99a]
    G. Kniesel, Darwin — Dynamic Object—Based Inheritance with Subtyping, Dissertation (in Vorbereitung), Institut für Informatik III, Universität Bonn, 1999.Google Scholar
  11. [Kniesel 99b]
    G. Kniesel, Type—Safe Delegation for Runtime Component Adaptation, in Proceedings of ECOOP’99, LNCS (in Vorbereitung), Springer Verlag, 1999.Google Scholar
  12. [Marino 90]
    O. Marino, F. Rechenmann und P. Uvietta, Multiple Perspectives and Classification Mechanism in Object—Oriented Representation, in Proceedings of the European Conference on Artificial Intelligence, 1990.Google Scholar
  13. [Meyer 92]
    B. Meyer, Eiffel: The Language, Prentice—Hall, 1992.Google Scholar
  14. [Pernici 90]
    B. Pernici, Objects with roles, in Proceedings ACM—IEEE Conference of Office Information Systems (COIS), ACM Press, 1990.Google Scholar
  15. [Richardson 91]
    J. Richardson und P. Schwarz, Aspects: Extending Objects to Support Multiple, Independent Roles, in Proceedings of the ACM SIGMOD International Conference on Management of Data, pages 298–307. 1991.Google Scholar
  16. [Rieu 92]
    D. Rieu und G.T. Nguyen, Object Views for Engineering Databases, in Proceedings of 3rd International Conference on Data &; Knowledge Systems for Manufacturing &: Engineering, 1992.Google Scholar
  17. [Schickel 97]
    M. Schickel, Lava — Konzeptionierung und Implementierung von Delegationsmechanismen in der Java Laufzeitumgebung, Diplomarbeit, Institut für Informatik III, Universität Bonn, 1997.Google Scholar
  18. [Shilling 89]
    J. J. Shilling and P. F. Sweeney, Three Steps to Views: Extending the Object—Oriented Paradigm, in ACM SIGPLAN Notices, Proceedings of OOPSLA ’89, 24(10):353–361, 1989.Google Scholar
  19. [Sielski 98]
    A. Sielski, Vergleichende Implementierung eines Rollenkonzeptes in verschiedenen Zielsprachen, Diplomarbeit, Universität Bonn, 1998.Google Scholar
  20. [Smith 95]
    W.R. Smith, Using a Prototype—Based Language for User Interfaces: The Newton Project’s Experiences, in OOPSLA ’95 Conference Proceedings, SIGPLAN Notices, ACM Press, 1995.Google Scholar
  21. [Smith 96]
    R.B. Smith und D. Ungar, A Simple and Unifying Approach to Subjective Objects, in Theory and Practice of Object Systems (TAPOS), 2(3):161–178, 1996, Special Issue on Subjectivity in Object—Oriented Systems.Google Scholar
  22. [Szyperski 98]
    C. Szyperski, Component Software — Beyond Object—Oriented Programming, Addison—Wesley, 1998.Google Scholar
  23. [Ungar 87]
    U. Ungar und R. B. Smith, SELF: The Power of Siplicity, in OOPSLA ’87 Conference Proceedings, Band 22 (12) von Special issue of SIGPLAN Notices, Seiten 227–242, ACM Press, December 1987.Google Scholar
  24. [Wieringa 94]
    R. Wieringa, W. de Jonge und P. Spruit, Roles and Dynamic Subclasses: A Modal Logic Approach, in Proceedings of ECOOP’94, LNCS 821, pages 32–59. Springer—Verlag, Bologna, Italy, 1994.Google Scholar

Copyright information

© Springer Verlag Berlin Heidelberg 1999

Authors and Affiliations

  • Pascal Costanza
    • 1
  • Günter Kniesel
    • 1
  • Armin B. Cremers
    • 1
  1. 1.Rheinische Friedrich-Wilhelms-Universität BonnInstitut für Informatik IIIBonnGermany

Personalised recommendations