Zuhause Persönliche Finanzen Verständnis der objektorientierten Programmierung (OOP) von Java - Dummies

Verständnis der objektorientierten Programmierung (OOP) von Java - Dummies

Inhaltsverzeichnis:

Video: Objektorientierte Programmierung in Java | 10. Tutorial 2024

Video: Objektorientierte Programmierung in Java | 10. Tutorial 2024
Anonim

Java ist objektorientiert. Was bedeutet das? Im Gegensatz zu Sprachen wie FORTRAN, die sich darauf konzentrieren, dem Computer zwingende "Do this / Do that" -Befehle zu geben, konzentrieren sich objektorientierte Sprachen auf Daten. Natürlich teilen objektorientierte Programme dem Computer noch mit, was zu tun ist. Sie beginnen jedoch, indem sie die Daten organisieren, und die Befehle kommen später.

Objektorientierte Sprachen sind besser als "Do this / Do that" -Sprachen, weil sie Daten so organisieren, dass Menschen damit alle möglichen Dinge tun können. Um die Daten zu ändern, können Sie auf dem aufbauen, was Sie bereits haben, anstatt alles, was Sie getan haben, zu verschrotten und jedes Mal neu zu beginnen, wenn Sie etwas Neues machen müssen. Obwohl Computerprogrammierer im Allgemeinen kluge Leute sind, brauchten sie eine Weile, um dies herauszufinden.

Objekte und ihre Klassen

In einer objektorientierten Sprache verwenden Sie die Objekte und , um Ihre Daten zu organisieren.

Stellen Sie sich vor, Sie schreiben ein Computerprogramm, um die Häuser in einer neuen Wohnanlage (noch im Bau) zu verfolgen. Die Häuser unterscheiden sich nur geringfügig voneinander. Jedes Haus hat eine unverwechselbare Außenfarbe, eine Innenfarbe, einen Küchenschrank und so weiter. In Ihrem objektorientierten Computerprogramm ist jedes Haus ein Objekt.

Aber Objekte sind nicht die ganze Geschichte. Obwohl sich die Häuser leicht voneinander unterscheiden, teilen sich alle Häuser die gleiche Merkmalsliste. Zum Beispiel hat jedes Haus eine Eigenschaft, die als -Seitenfarbe bekannt ist. Jedes Haus hat eine andere Eigenschaft, die als Küchenschrank bekannt ist. In Ihrem objektorientierten Programm benötigen Sie eine Hauptliste, die alle Merkmale enthält, die ein Hausobjekt besitzen kann. Diese Hauptmerkmalsliste wird als -Klasse bezeichnet.

Da hast du es. Objektorientierte Programmierung ist falsch benannt. Es sollte wirklich "Programmierung mit Klassen und Objekten genannt werden. "

Beachten Sie, dass das Wort Klassen zuerst aufgeführt wurde. Denken Sie noch einmal an eine im Bau befindliche Wohnanlage. Irgendwo auf dem Parkplatz, in einem wackeligen Wohnwagen, der auf nacktem Boden geparkt ist, befindet sich eine Hauptliste von Eigenschaften, die als Blaupause bekannt sind. Der Entwurf eines Architekten ist wie eine Klasse eines objektorientierten Programmierers. Eine Blaupause ist eine Liste von Eigenschaften, die jedes Haus haben wird. Die Blaupause sagt: "Abstellgleis. "Das eigentliche Hausobjekt hat eine graue Fassade. Die Blaupause sagt: "Küchenschrank. "Das eigentliche Hausobjekt hat Küchenschränke von Louis XIV.

Ein Jahr, nachdem Sie den Bauplan erstellt haben, verwenden Sie diesen, um zehn Häuser zu erstellen. Das gleiche gilt für Klassen und Objekte. Zuerst schreibt der Programmierer Code, um eine Klasse zu beschreiben. Wenn das Programm ausgeführt wird, erstellt der Computer dann Objekte aus der Klasse (Blaupause).

Das ist die wirkliche Beziehung zwischen Klassen und Objekten. Der Programmierer definiert eine Klasse und aus der Klassendefinition erzeugt der Computer individuelle Objekte.

Was ist so gut an einer objektorientierten Sprache?

Stellen Sie sich vor, Sie haben bereits ein Computerprogramm geschrieben, um die Bauanleitungen für Häuser in einer neuen Entwicklung zu verfolgen. Dann entscheidet der große Chef über einen modifizierten Plan - ein Plan, bei dem die Hälfte der Häuser drei Schlafzimmer hat und die andere Hälfte vier.

Wenn Sie den alten FORTRAN / C-Stil der Computerprogrammierung verwenden, sehen Ihre Anweisungen wie folgt aus:

Graben Sie einen Graben für den Keller.

Legen Sie Beton um die Seiten des Grabens.

Legen Sie zwei-mal-vier an den Seiten des Rahmens des Untergeschosses an.

Dies wäre wie ein Architekt, der eine lange Liste von Anweisungen anstelle eines Bauplans erstellt. Um den Plan zu ändern, müssen Sie die Liste durchgehen, um die Anweisungen zum Erstellen von Schlafzimmern zu finden. Um die Dinge noch schlimmer zu machen, könnten die Anweisungen auf den Seiten 234, 394-410, 739, 10 und 2 verstreut sein. Wenn der Erbauer die komplizierten Anweisungen anderer Leute entziffern müßte, wäre die Aufgabe zehnmal schwerer.

Mit einer Klasse zu beginnen, ist jedoch wie mit einer Blaupause zu beginnen. Wenn Sie sich für ein Haus mit drei oder vier Schlafzimmern entscheiden, können Sie mit einem Bauplan mit dem Namen Haus anfangen, der ein Erdgeschoss und einen zweiten Stock hat, aber keine Innenwände im zweiten Stock hat… Dann machen Sie zwei weitere Blaupausen im zweiten Stock - einen für das Haus mit drei Schlafzimmern und einen weiteren für das Haus mit vier Schlafzimmern. (Sie nennen diese neuen Entwürfe den Entwurf mit drei Schlafzimmern und den Entwurf mit vier Schlafzimmern .)

Ihre Baukollegen sind erstaunt über Ihren Sinn für Logik und Organisation, aber sie haben Bedenken. Sie stellen eine Frage. "Sie haben einen der Baupläne als die" Drei-Zimmer-Haus "-Blaupause bezeichnet. Wie können Sie das tun, wenn es eine Blaupause für einen zweiten Stock und nicht für ein ganzes Haus ist? "

Sie lächeln wissend und antworten:" Die Bauplanung mit drei Schlafzimmern kann sagen: "Informationen zu den unteren Stockwerken finden Sie in der ursprünglichen Bauplanung. "Auf diese Weise beschreibt der Bauplan mit drei Schlafzimmern ein ganzes Haus. Der Bauplan mit vier Schlafzimmern kann dasselbe sagen. Mit diesem Setup können wir die gesamte Arbeit, die wir bereits geleistet haben, nutzen, um den ursprünglichen Bauplan zu erstellen und viel Geld zu sparen. "

In der Sprache der objektorientierten Programmierung haben die Hausklassen mit drei oder vier Schlafzimmern die Eigenschaften der ursprünglichen Hausklasse ererbt. Sie können auch sagen, dass die Hausklassen mit drei oder vier Schlafzimmern sind und die ursprüngliche Hausklasse erweitern.

Die ursprüngliche Hausklasse wird als Oberklasse der Hausklassen mit drei oder vier Schlafzimmern bezeichnet.In diesem Sinne sind die Hausklassen mit drei oder vier Schlafzimmern Unterklassen der ursprünglichen Hausklasse. Anders ausgedrückt heißt die ursprüngliche Hausklasse die Elternklasse von Hausklassen mit drei oder vier Schlafzimmern. Die Hausklassen mit drei oder vier Schlafzimmern sind Kinderklassen der ursprünglichen Hausklasse.

Unnötig zu sagen, sind Ihre Baukollegen eifersüchtig. Eine Menge von Baumeistern ist um dich herum, um von deinen großartigen Ideen zu hören. In diesem Moment fallen Sie also eine weitere Bombe ab: "Indem wir eine Klasse mit Unterklassen erstellen, können wir die Blaupause in Zukunft wiederverwenden. Wenn jemand kommt und ein Haus mit fünf Schlafzimmern wünscht, können wir unseren ursprünglichen Hausentwurf verlängern, indem wir einen Hausentwurf mit fünf Schlafzimmern bilden. Wir werden nie wieder Geld für eine originelle Hausvorlage ausgeben müssen. "

" Aber ", sagt ein Kollege in der hinteren Reihe," was passiert, wenn jemand ein anderes Design im ersten Stock wünscht? Verschwenden wir die ursprüngliche Bauplanung oder fangen wir an, über die ursprüngliche Bauplanung zu scribbeln? Das kostet viel Geld, nicht wahr? "

In einem selbstbewussten Tonfall antworten Sie:" Wir müssen uns nicht mit der ursprünglichen Hausvorlage herumschlagen. Wenn jemand einen Jacuzzi in seinem Wohnzimmer wünscht, können wir eine neue, kleine Blaupause machen, die nur das neue Wohnzimmer beschreibt, und dies die Jacuzzi-im-Wohnzimmer-Haus Blaupause nennen. Dann kann diese neue Blaupause sich auf die ursprüngliche Haus-Blaupause für Informationen über den Rest des Hauses beziehen (der Teil, der nicht im Wohnzimmer ist). "In der Sprache der objektorientierten Programmierung erstreckt sich der Bauplan des Jacuzzi-im-Wohnzimmer-Hauses immer noch auf die originale Hausvorlage. Der Jacuzzi Blueprint ist immer noch eine Unterklasse des ursprünglichen Bauplans. In der Tat gilt die gesamte Terminologie über Superklasse, Elternklasse und Kindklasse immer noch. Das einzige, was neu ist, ist, dass die Jacuzzi-Blaupause die Wohnzimmer-Features in der originalen Haus-Blaupause übersteuert. In den Tagen vor den objektorientierten Sprachen erlebte die Programmierwelt eine Krise in der Softwareentwicklung. Programmierer schrieben Code, entdeckten dann neue Bedürfnisse und mussten dann ihren Code entschlüsseln und bei Null anfangen. Das passierte immer wieder, weil der Code, den die Programmierer geschrieben hatten, nicht wiederverwendet werden konnte. Die objektorientierte Programmierung hat das alles zum Besseren verändert.

Verständnis der objektorientierten Programmierung (OOP) von Java - Dummies

Die Wahl des Herausgebers

Bearbeiten in Photoshop Elements 10 Schnellfoto-Bearbeitungsmodus - Schnuller

Bearbeiten in Photoshop Elements 10 Schnellfoto-Bearbeitungsmodus - Schnuller

Schneller Foto-Bearbeitungsmodus ist eine abgespeckte Version des Modus "Full Photo Edit", der einfach grundlegende Fixingtools bereitstellt und mit einigen einzigartigen Funktionen aufwartet, z. B. eine Vorher-Nachher-Vorschau Ihres Bildes. Hier ist ein Schritt-für-Schritt-Workflow, den Sie im Schnellfoto-Bearbeitungsmodus verwenden können, um Ihre Fotos zu reparieren:

Zum Optimieren von Photoshop Elements-Bildern mit Fotoeffekten - Dummies

Zum Optimieren von Photoshop Elements-Bildern mit Fotoeffekten - Dummies

Fotoeffekte in Photoshop Elements 11 funktionieren wie Anwenden von Filtern; Das Dialogfeld "Filtergalerie" bietet Ihnen zahlreiche Optionen zum Anwenden eines Filters. Das geführte Bedienfeld bietet Ihnen Filtereffekte und führt Sie dann durch die Schritte zum Anpassen von Helligkeitswerte, Ändern von Farbton und Sättigung und Durchführen weiterer Anpassungen zum Vervollkommnen des Ergebnisses. Sie ...

Eingeben des Absatztyps in Photoshop Elements 11 - Dummies

Eingeben des Absatztyps in Photoshop Elements 11 - Dummies

Absatztyp in Photoshop Elements 11 ist ähnlich zu dem Text, den Sie in ein Textverarbeitungsprogramm eingeben, mit der Ausnahme, dass er in einem Textfeld oder einem Begrenzungsrahmen enthalten ist. Wenn Sie größere Textabschnitte haben, die Sie in ein Bild eingeben möchten, ist die Eingabe des Textes als Absatztyp die praktischste Option. Während ...

Die Wahl des Herausgebers

PHP-Anweisungen - Dummys

PHP-Anweisungen - Dummys

PHP ist eine Skriptsprache, die speziell für die Verwendung im Internet entwickelt wurde. Es enthält Funktionen, die Sie bei der Programmierung der Aufgaben unterstützen, die für die Entwicklung dynamischer Webanwendungen erforderlich sind. Diese Tabelle gibt einen kurzen Überblick über einige der Anweisungen, die Sie häufig verwenden werden: Anweisung Beschreibung array ("key" => "value", ...); Casts a ...

PHP-Schablonen-Systeme - Schablonen-Systeme

PHP-Schablonen-Systeme - Schablonen-Systeme

Können die Menge an Arbeit reduzieren, die Sie für die Erstellung einer Website in PHP benötigen. Wenn Sie eine Website erstellen, verwenden Sie häufig das gleiche Layout für die gesamte Website. Sie haben eine obere Portion, vielleicht mit einem Menü; ein Hauptinhaltsbereich; und ein unterer Teil, vielleicht mit Links oder ...

Make MySQL Datenbank Änderungen mit den ALTER Query - Dummies

Make MySQL Datenbank Änderungen mit den ALTER Query - Dummies

Die ALTER Query wird verwendet, um die Struktur von eine MySQL-Datenbank. In dieser Liste wird die Syntax für die Änderungen angezeigt, die Sie wahrscheinlich vornehmen möchten: ADD-Spaltenbezeichnung ALTER-Spaltenname SET-DEFAULT-Wert ALTER-Spaltenname DROP DEFAULT CHANGE-Spaltenname newcolname-Definition DROP-Spaltenname MODIFY-Spaltenname RENAME newtablename

Die Wahl des Herausgebers

Hochgeschwindigkeitsdatencaching mit NoSQL - Dummies

Hochgeschwindigkeitsdatencaching mit NoSQL - Dummies

Mit NoSQL haben Sie Hochgeschwindigkeits-Caching. Stellen Sie sich vor, Sie sind Bankangestellte und arbeiten mit drei anderen Kollegen zusammen. Jeder hat eine Reihe von Leuten, die bedient werden sollen. Einer der Kunden bleibt jedoch in der Schlange, um zu fragen, ob sein Scheck bereits eingelöst und der Betrag seinem Konto gutgeschrieben wurde. Wenn Sie ...

Wie man Einsichten aus Big Data kommuniziert - Dummies

Wie man Einsichten aus Big Data kommuniziert - Dummies

Big Data kann helfen, Einblicke zu gewinnen. Unternehmen gewinnen Wettbewerbsvorteile, wenn die richtigen Informationen zur richtigen Zeit an die richtigen Leute geliefert werden. Dies bedeutet, Erkenntnisse und Informationen aus Daten zu extrahieren und sie Entscheidungsträgern auf eine Weise zu vermitteln, die sie leicht verstehen. Schließlich sind Menschen weniger wahrscheinlich zu handeln, wenn sie ...

Zookeeper und HBase Reliability - dummies

Zookeeper und HBase Reliability - dummies

Zookeeper ist ein verteiltes Cluster von Servern, das gemeinsam zuverlässige Koordinations- und Synchronisationsdienste für Cluster-Anwendungen bereitstellt. .. Zugegeben, der Name "Zookeeper" mag auf den ersten Blick eine seltsame Wahl sein, aber wenn Sie verstehen, was es für einen HBase-Cluster tut, können Sie die Logik dahinter sehen. Beim Erstellen und Debuggen von verteilten Anwendungen ...