ycliper

Популярное

Музыка Кино и Анимация Автомобили Животные Спорт Путешествия Игры Юмор

Интересные видео

2025 Сериалы Трейлеры Новости Как сделать Видеоуроки Diy своими руками

Топ запросов

смотреть а4 schoolboy runaway турецкий сериал смотреть мультфильмы эдисон
Скачать

JavaScript: Objekte

Автор: Informatik-Grundlagen mit Frank Dopatka

Загружено: 2025-06-28

Просмотров: 50

Описание: #Vorlesung #Webbasierte #Systeme an der #Technischen #Hochschule #Mannheim

JavaScript: Objekte

In diesem Kapitel werden die zentralen Objektkonzepte von JavaScript erklärt und mit Java verglichen. Während Java klassenbasiert ist – das heißt, alle Objekte haben ihre Struktur durch Klassen vorgegeben und alle Instanzen einer Klasse teilen denselben Aufbau –, ist JavaScript in erster Linie objektbasiert und nutzt prototypische Vererbung. Funktionen sind in JavaScript selbst Objekte, und jedes Objekt kann von einem anderen Objekt erben. Die Struktur eines Objekts wird nicht durch eine Klasse, sondern durch eine Konstruktorfunktion, ein Objekt-Literal oder eine Factory-Funktion festgelegt. Konstruktorfunktionen werden mit „new“ aufgerufen, Factory-Funktionen hingegen ohne „new“. Bei beiden Varianten entstehen Objekt-Referenzen mit individuellen Eigenschaften und Methoden.

Objekte lassen sich einfach durch JSON-ähnliche Objekt-Literale anlegen – es genügt eine Schlüssel-Wert-Struktur, ohne dass eine eigene Klasse definiert werden muss. Alternativ können Konstruktorfunktionen oder Factory-Funktionen verwendet werden, letztere verwalten das Objekt intern und geben es am Ende zurück.

Vererbung funktioniert in JavaScript über den Prototyp-Mechanismus. Jede Funktion besitzt ein prototype-Objekt, das als Vorlage für neue Objekte dient. Wird eine Funktion als Konstruktor genutzt, erhält das erzeugte Objekt eine Referenz auf den Prototyp. Fehlen im Objekt Eigenschaften oder Methoden, sucht JavaScript sie im Prototypen und klettert die Prototypenkette entlang. Mit Object.create können neue Objekte direkt auf Basis eines existierenden Prototyps erzeugt und individuell erweitert werden.

Ein Beispiel verdeutlicht: Der Prototyp „Tier“ besitzt Eigenschaften wie Beine und Augen sowie Methoden wie „fressen“ und „flüchten“. Spezialisierte Tiere – etwa Spinnen, Enten oder Dackel – werden durch neue Konstruktorfunktionen angelegt, die den Tier-Prototyp erweitern oder Methoden überschreiben. Jede Instanz kann individuell angepasst werden. Die Vererbungsbeziehung wird in JavaScript über den call-Befehl oder die Prototypenverkettung hergestellt – ähnlich wie der super-Konstruktor in Java.

Die Überprüfung der Vererbung erfolgt mit „instanceof“, das prüft, ob ein Objekt in der Prototypkette eines bestimmten Konstruktors vorkommt. Attribute und Methoden lassen sich zur Laufzeit mit „delete“ auch vollständig entfernen – ein Unterschied zu Java, wo Attribute statisch durch die Klasse bestimmt werden. Anders als Java kennt JavaScript keine eingebauten Zugriffsbeschränkungen wie private oder protected; alle Eigenschaften sind öffentlich, Information Hiding muss aktiv durch spezielle Muster erreicht werden.

Kapselung und Information Hiding lassen sich dennoch umsetzen, etwa mit Factory-Methoden, bei denen ein internes Objekt „my“ für private Variablen und ein öffentliches Objekt „that“ für Methoden genutzt werden. Das öffentliche Objekt greift auf die privaten Daten nur innerhalb der Factory-Funktion zu, wodurch echte Datenkapselung entsteht. Methoden wie Getter und Setter machen den Zugriff kontrollierbar, der direkte Zugriff auf die privaten Daten bleibt ausgeschlossen.

Mit ES2015 wurde die class-Syntax eingeführt, die Java-ähnliche Klassenstrukturen in JavaScript ermöglicht. Diese Syntax ist jedoch vor allem „syntactic sugar“, denn im Hintergrund bleibt das Prototyp-Prinzip bestehen, und alle Eigenschaften bleiben weiterhin öffentlich.

Abschließend behandelt das Kapitel die Ausnahmebehandlung in JavaScript. Sie funktioniert ähnlich wie in Java mit try, catch und finally, wobei die Ausnahmen nicht typisiert sind und nur ein catch-Block erlaubt ist. Fehler können explizit mit throw ausgelöst werden.

Insgesamt zeigt das Kapitel, dass JavaScript eine flexible, dynamische Objektmodellierung mit prototypischer Vererbung, Laufzeiterweiterungen und der Möglichkeit zur Kapselung bietet, wobei sich Konzepte wie Information Hiding und Vererbung anders als in klassischen objektorientierten Sprachen wie Java gestalten.

0:00 Einführung Objekte
0:34 Objekterzeugung
1:56 Vererbung
2:43 Prototypen
4:47 Prototypische Vererbung
5:37 instanceof
6:05 delete
6:17 Kapselung & Information Hiding
8:26 Ausnahmebehandlung try/catch
9:08 ES2015 class-Syntax

Не удается загрузить Youtube-плеер. Проверьте блокировку Youtube в вашей сети.
Повторяем попытку...
JavaScript: Objekte

Поделиться в:

Доступные форматы для скачивания:

Скачать видео

  • Информация по загрузке:

Скачать аудио

Похожие видео

JavaScript im DOM

JavaScript im DOM

JavaScript: Datentypen und Variablen

JavaScript: Datentypen und Variablen

JavaScript - Полный Курс JavaScript Для Начинающих [11 ЧАСОВ]

JavaScript - Полный Курс JavaScript Для Начинающих [11 ЧАСОВ]

PHP: Verzweigungen, Schleifen, Funktionen

PHP: Verzweigungen, Schleifen, Funktionen

Эту НОВУЮ Мапу в GO Должен Знать Каждый GO-Разработчик

Эту НОВУЮ Мапу в GO Должен Знать Каждый GO-Разработчик

HyperText Transfer Protocol: HTTP

HyperText Transfer Protocol: HTTP

Как Windows работает с ОЗУ или почему вам НЕ НУЖНЫ гигабайты памяти

Как Windows работает с ОЗУ или почему вам НЕ НУЖНЫ гигабайты памяти

Новый язык программирования для эпохи ИИ

Новый язык программирования для эпохи ИИ

Как они смогут отобрать у нас деньги?! ❌ || Дмитрий Потапенко*

Как они смогут отобрать у нас деньги?! ❌ || Дмитрий Потапенко*

ООП На Простых Примерах | Объектно-Ориентированное Программирование

ООП На Простых Примерах | Объектно-Ориентированное Программирование

Юрий Малич «Использование ссылок и ref-структур для низкоуровневой оптимизации C# кода»

Юрий Малич «Использование ссылок и ref-структур для низкоуровневой оптимизации C# кода»

Двигатель Стирлинга: обогнать паровой век и покорить космос

Двигатель Стирлинга: обогнать паровой век и покорить космос

Deep House Mix 2024 | Deep House, Vocal House, Nu Disco, Chillout Mix by Diamond #3

Deep House Mix 2024 | Deep House, Vocal House, Nu Disco, Chillout Mix by Diamond #3

Рухнул самолет: жертвы. Интернет в Москве — всё? Цены на нефть: Путин рад | Крутихин, Долин | ВОЗДУХ

Рухнул самолет: жертвы. Интернет в Москве — всё? Цены на нефть: Путин рад | Крутихин, Долин | ВОЗДУХ

КАК УСТРОЕН TCP/IP?

КАК УСТРОЕН TCP/IP?

JavaScript: Verzweigungen, Schleifen, Arrays

JavaScript: Verzweigungen, Schleifen, Arrays

КЛАССИЧЕСКАЯ МУЗЫКА ДЛЯ ВОССТАНОВЛЕНИЯ НЕРВНОЙ СИСТЕМЫ🌿 Нежная музыка успокаивает нервную систему 22

КЛАССИЧЕСКАЯ МУЗЫКА ДЛЯ ВОССТАНОВЛЕНИЯ НЕРВНОЙ СИСТЕМЫ🌿 Нежная музыка успокаивает нервную систему 22

Война с Ираном: Первые потери авиации США. Израиль готовится к наземной операции в Ливане

Война с Ираном: Первые потери авиации США. Израиль готовится к наземной операции в Ливане

США бьют тревогу, Израиль на нервах: что происходит вокруг Ирана

США бьют тревогу, Израиль на нервах: что происходит вокруг Ирана

Музыка для работы за компьютером | Фоновая музыка для концентрации и продуктивности

Музыка для работы за компьютером | Фоновая музыка для концентрации и продуктивности

© 2025 ycliper. Все права защищены.



  • Контакты
  • О нас
  • Политика конфиденциальности



Контакты для правообладателей: [email protected]