Skip to main content

Objektorientierte Programmierung in Python – Klassen, Objekte, Eigenschaften und Methoden

  • Chapter
  • First Online:
Programmierung in Python
  • 39k Accesses

Zusammenfassung

Wir haben uns in dem Kapitel angesehen, wie man in Python objektorientiert programmiert. Python hat diverse Dinge bei der objektorientierten Programmierung vereinfacht, was aber den Preis hat, dass für erfahrene OO-Programmierer aus anderen Sprachen viele Stolperfallen vorhanden sind. Sie sollten sich auch im Klaren sein, dass in Python im Hintergrund immer ein objektorientierter Ansatz abläuft – auch wenn Sie selbst funktional programmieren.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 44.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    C/C++ war zwar zu der Zeit auch schon sehr populär, aber eine hybride Sprache, in der man sowohl objektorientiert, als auch funktional programmieren konnte. Und oft wurde in C/C++-Projekten nicht wirklich objektorientiert programmiert – was ich aus eigener Erfahrung weiß.

  2. 2.

    Die historisch erste Generation der Programmierung mit Maschinensprache und die zweite Generation mit Assembler sollen hier nicht beachtet werden, sondern nur die höheren Programmiersprachen.

  3. 3.

    Darauf gehen wir natürlich noch ein.

  4. 4.

    Sogenannte Entwurfsmuster können die Anzahl der möglichen Instanzen reglementieren, aber das soll hier außer Acht bleiben.

  5. 5.

    Eine andere Notation finden Sie zum Beispiel in PHP.

  6. 6.

    Wenngleich auch hier mit einer speziellen Syntax.

  7. 7.

    Wenngleich es da explizit nicht empfohlen wird und der Compiler eine Warnung anzeigt.

  8. 8.

    Also die analoge Situation wie bei Klasseneigenschaften.

  9. 9.

    Annotation bedeutet „Anmerkung“, „Beifügung“ oder „Hinzufügung“ und wird in Python als Kommentar verstanden, den der Interpreter ignoriert.

  10. 10.

    Der Autor zählt sich ausdrücklich nicht dazu – mir sind Getter und Setter bedeutend lieber und ich finde diese besser lesbar und aussagekräftiger.

  11. 11.

    Etwa Meldungen anzeigen oder Dinge protokollieren.

  12. 12.

    Eigentlich besser mit „überdefinieren“ übersetzt.

  13. 13.

    Also streng typisierten Sprachen.

  14. 14.

    Python erlaubt es etwa in eigenen Klassen, dem +-Operator eine eigene Bedeutung zu geben, indem die Methode __add__ redefiniert wird. Für den Operator – würde etwa __sub__ redefiniert. Aber meines Erachtens ist so eine Überladung hochgefährlich und schlecht lesbar und wartbar. Ich rate davon ab.

  15. 15.

    Das zeigt schon, dass abstrakte Klassen nicht so natürlich in das Kernkonzept von Python eingebaut wurden, wie es in Java oder C# der Fall ist.

  16. 16.

    Methoden ohne Implementierung.

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer Fachmedien Wiesbaden GmbH, ein Teil von Springer Nature

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Steyer, R. (2018). Objektorientierte Programmierung in Python – Klassen, Objekte, Eigenschaften und Methoden. In: Programmierung in Python . Springer Vieweg, Wiesbaden. https://doi.org/10.1007/978-3-658-20705-2_11

Download citation

Publish with us

Policies and ethics