Objektorientierte Programmierung in Java - Schulversion (openHPI)

Objektorientierte Programmierung in Java - Schulversion (openHPI)

Dieser Kurs ist offen für alle, richtet sich aber in erster Linie an Schüler:innen. Alle, die schon immer in die Welt des Programmierens hineinschnuppern wollten oder schon erste Erfahrung in der Programmierung gesammelt haben sind herzlich willkommen. In vier Modulen (14 Wochen) beschäftigen wir uns mit den Grundlagen der Programmiersprache Java und der objektorientierten Programmierung und lösen gemeinsam mit Detektiv Duke einen mysteriösen Entführungsfall. Mit diesem Kurs möchten wir v.a. Schüler:innen der Oberstufe (Jahrgangsstufe 10-13) ansprechen.

Durch regelmäßige Programmieraufgaben wird das Gelernte angewendet und die Teilnehmer erwerben praktische Kenntnisse in der Programmiersprache Java.
Voraussetzungen für diesen Kurs sind lediglich ein Interesse an Programmierung, ein Computer mit Internetzugang und ein moderner Browser. Vorhergehende Programmiererfahrung ist hilfreich, aber nicht notwendig.

Schulversion
Um den Gegebenheiten an Schulen besser gerecht zu werden, wurde dieser Kurs zeitlich gestreckt und an die Schulferien angepasst. Um erfolgreich am Kurs teilzunehmen, sollte man 2-3 Stunden Zeit pro Woche einplanen.
In den Schulversionen bieten wir als Teaching Team nur einen eingeschränkten Forensupport. Bitte rechnet daher nicht damit, dass alle Fragen sofort durch uns beantwortet werden. Lehrer:innen bitten wir ihren Schüler:innen den notwendigen Support anzubieten. Der Kurs ist nicht als Ersatz für den Unterricht an der Schule gedacht, sondern als Bereicherung.

Kursinhalte
In diesem openHPI-Einsteiger:innenkurs lernt ihr die Schlüsselkonzepte der objektorientierten Programmierung (OOP) sowie grundlegende Programmierkonzepte kennen.
Das wesentliche Merkmal von OOP ist die geeignete Verteilung von Aufgaben auf Komponenten. Diese Komponenten weisen jeweils eigene Eigenschaften und Verhaltensweisen auf, die sich gegenseitig beeinflussen können.
Durch praktische Programmieraufgaben könnt ihr das Gelernte direkt anwenden und praktische Kenntnisse in der Programmiersprache Java erwerben.
Nach Kursabschluss werdet ihr in der Lage sein, kleine Programme in Java zu modellieren, zu implementieren und gängige OOP-Praktiken anzuwenden.
Dieser Kurs richtet sich v.a. an Schüler:innen der Jahrgangsstufen 10 bis 13. Voraussetzungen für diesen Kurs sind lediglich ein Interesse an Programmierung und ein Computer mit Internetzugang. Vorhergehende Programmiererfahrung ist hilfreich, aber nicht notwendig. Wenn ihr einmal nicht weiterwisst, könnt ihr im Forum oder den Lerngruppen Unterstützung von anderen Kursteilnehmern finden. Bei erfolgreicher Teilnahme erhaltet ihr nach Kursende einen Leistungsnachweis.

Course contents

Modul 1:
Im ersten Kursmodul lernen wir den grundlegenden Aufbau eines Java Programms, sowie Variablen, Klassen, Objekte und Methoden kennen.
Modul 2:
In Modul zwei werden Parameter, Attribute, Bedingungen, Schleifen und Arrays behandelt.
Modul 3:
In Modul drei wird näher auf Sichtbarkeiten und Vererbung eingegangen.
Modul 4:
In Modul vier lernen wir den richtigen Umgang mit Objektdatentypen kennen und beschäftigen uns darüber hinaus mit Typecasting, und Collections.
Exkurs : Speicherverwaltung:
Dieser Exkurs gewährt einen Einblick in die technische Umsetzung bei der Ausführung unserer Java-Programme. Unter anderem wird der Umgang mit Referenzen und die sogenannte "Garbage Collection" näher beleuchtet.
Cheat Sheets und andere Materialien

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Programmieren lernen mit Python (openHPI) OpenHPI
Hasso-Plattner-Institut

Programmieren lernen mit Python (openHPI)

Du bist Schüler:in zwischen 12 und 18 Jahren? Du hast bisher noch keine Programmierkenntnisse oder möchtest gerne Python lernen, eine einfache, aber sehr mächtige Programmiersprache, die auch in Industrie und Forschung stark verbreitet ist? Dann bist du hier genau richtig! Python zeichnet sich insbesondere durch eine gute Lesbarkeit und die hohe Verfügbarkeit bestehender Bibliotheken aus. In diesem vierwöchigen kostenlosen Einsteigerkurs lernst du spielerisch und mit gehörigem Spaßfaktor die Grundlagen der Programmierung in Python kennen. Neues Wissen vertiefen wir mit praktischen Beispielen und helfen so, den beiden Schlangen Simon und Stella ihre Probleme zu lösen. Die beiden Schlangen stehen symbolisch für die Programmiersprache Python, dessen Logo zwei Python-Schlangen bilden.

Self Paced
Self-Paced
Java程序设计 (Coursera) Coursera
Peking University

Java程序设计 (Coursera)

《Java程序设计》课程是使用Java语言进行应用程序设计的课程,针对各专业的大学本科生开设。课程的主要目标有三: 一、掌握Java语言的语法,能够较为深入理解Java语言机制,掌握Java语言面向对象的特点。 二、掌握JavaSE中基本的API,掌握在集合、线程、输入输出、图形用户界面、网络等方面的应用。三、能够编写有一定规模的应用程序,养成良好的编程习惯,会使用重构、设计模式、单元测试、日志、质量管理工具提高代码的质量。 对于学过“计算机基础、计算概论或C语言的学生”尤为适用。

Nov 16th 2026
5-12 Weeks
Working with Integrated Development Environments (Coursera) Coursera
University of Leeds

Working with Integrated Development Environments (Coursera)

Integrated Development Environments (IDEs) are vital in increasing developer productivity and learning to work with them will help you create impressive software projects whether you're a beginner or have some programming experience. This course provides the essential skills and knowledge to excel in software development using Integrated Development Environments (IDEs). You'll cover IDE fundamentals, including environment setup, interface navigation, and valuable features like debugging.

Nov 16th 2026
2 Weeks
Java für Einsteiger (openHPI) OpenHPI
Hasso-Plattner-Institut

Java für Einsteiger (openHPI)

Mit diesem neuen openHPI Einsteigerkurs möchten wir unseren Teilnehmern die Grundlagen der Programmiersprache Java vermitteln. Java ist weit verbreitet und wird vielseitig eingesetzt. Unter anderem werden mit Java Programme für Googles Android Plattform entwickelt. Dieser Kurs vermittelt die grundlegenden Konzepte des Programmierens einfach und verständlich. Durch regelmäßige praktische Übungen wird das Gelernte angewendet und gefestigt. Wir sprechen mit diesem Kurs alle Einsteiger an, die sich für die Programmierung in Java interessieren. Voraussetzung ist ein starkes Interesse an der Funktionsweise von Programmen am Computer, Programmiererfahrung ist jedoch nicht notwendig. Unsere Teilnehmer benötigen lediglich einen Computer mit einem Internetzugang und einem Browser.

Self Paced
Self-Paced
C++程序设计 (Coursera) Coursera
Peking University

C++程序设计 (Coursera)

讲授C++语言中和面向对象有关的概念和语法,如类和对象、运算符重载、继承和多态、类模板和算法模板、标准模板库等。目标是使得学生能够用C++语言,以面向对象的方法编写可维护性、可扩充性好的,较大规模的程序,初步领会面向对象程序设计方法的优势所在。

Nov 16th 2026
5-12 Weeks
VLSI CAD Part II: Layout (Coursera) Coursera
University of Illinois at Urbana-Champaign

VLSI CAD Part II: Layout (Coursera)

A modern VLSI chip is a remarkably complex beast: billions of transistors, millions of logic gates deployed for computation and control, big blocks of memory, embedded blocks of pre-designed functions designed by third parties (called “intellectual property” or IP blocks). How do people manage to design these complicated chips? Answer: a sequence of computer aided design (CAD) tools takes an abstract description of the chip, and refines it step-wise to a final design.

Nov 16th 2026
5-12 Weeks
VLSI CAD Part I: Logic (Coursera) Coursera
University of Illinois at Urbana-Champaign

VLSI CAD Part I: Logic (Coursera)

A modern VLSI chip has a zillion parts -- logic, control, memory, interconnect, etc. How do we design these complex chips? Answer: CAD software tools. Learn how to build thesA modern VLSI chip is a remarkably complex beast: billions of transistors, millions of logic gates deployed for computation and control, big blocks of memory, embedded blocks of pre-designed functions designed by third parties (called “intellectual property” or IP blocks). How do people manage to design these complicated chips? Answer: a sequence of computer aided design (CAD) tools takes an abstract description of the chip, and refines it step-wise to a final design.

Nov 16th 2026
5-12 Weeks
Programando con Java para aplicaciones Android (Coursera) Coursera
Universidad Nacional Autónoma de México

Programando con Java para aplicaciones Android (Coursera)

¡Aprende lo mejor de Java para el desarrollo en Android! Descubre lo necesario para construir tus aplicaciones móviles de una forma sencilla, objetiva y práctica. A lo largo del curso, verás diversos ejemplos para crear tu primer Hola Mundo y practicarás la programación orientada a objetos.

Nov 16th 2026
3 Weeks
Development of Real-Time Systems (Coursera) Coursera
EIT Digital

Development of Real-Time Systems (Coursera)

This course is intended for the Master's student and computer engineer who likes practical programming and problem solving! After completing this course, you will have the knowledge to plan and set-up a real-time system both on paper and in practice. The course centers around the problem of achieving timing correctness in embedded systems, which means to guarantee that the system reacts within the real-time requirements.

Nov 16th 2026
5-12 Weeks