» Objektorientiertes Programmieren in Java

layeredJPane - Menü-Leiste wie bei YoutubeNeuen Thread eröffnenNeue Antwort erstellenEntwurfsmuster
AutorNachricht
Beobachter 
Anmeldedatum: 04.05.2012
Beiträge: 1
04.05.2012, 10:06
zitieren

Hallo Leute,

da ich neu hier bin möchte ich mich kurz vorstellen. Ich bin 23 Jahre alt und habe zu Schulzeiten bereits eifrig in BASIC und Delphi programmiert, allerdings irgendwann aus idiotischen demotivierenden von anderen Leuten eingeredeten Gründen aufgehört das zu tun was mir Spaß macht, nämlich Programmieren!

Ich hab jetzt wieder angefangen und bin schon sehr begeistert von der CS106A Vorlesung in Standford, wo die Grundlagen der Syntax in Java durch die Karel-Sprache beigebracht werden, allerdings tauchen in diesem Selbststudium soviele Fragen auf, wo niemand da ist mir sie zu beantworten und ich hoffe ihr werdet mir auf meine Fragen rege antwort geben.

Threadbezogener Teil

Ich verstehe nicht eindeutig, was man in Java unter einer Klasse, einem Objekt und einer Instanz versteht (und einige andere Vokabeln), oder zumindest fehlt mir ein kleines Puzzleteil um für mich das erkenntnisreiche Gesamtbild im Kopf zu erzeugen, unteranderem deswegen weil das Wort Objekt in der gesamten bisher von mir durchgesehenen Literatur (und bei Wikipedia) völlig uneindeutig benutzt wird.
Ich fang einfach mal an meine Vorstellung vom objektorientierten Paradigma auf Basis der von mir angelesenen Inhalte zu elaborieren und wenn daran was falsch ist korrigiert mich bitte und erklärt es mir. Es ist wirklich ein extrem schmerzhaftes Gefühl das nicht richtig durchdrungen und begriffen zu haben.

Programmieren heißt Probleme lösen mittels Algorithmen, die einem Computer vorschriften geben was er zu tun hat um das Problem zu lösen. Weil er nicht Deutsch sprechen kann sprechen wir mit ihm beispielsweise in Java. Der Compiler wandelt den Quelltext in Bytecode um etc. etc., dabei geht der Compiler/Interpreter nach der Reihe durch und liest jede Anweisung zeilenweise. Damit komplexe Verflechtungen einfacher in eine für den Computer verständliche Form zu übersetzen sind verzichtet man in objektorientierten Sprachen auf die GOTO Zeilenverweise und abstrahiert das ganze. Der Compiler wird es letztlich wieder umwandeln in Anweisungen die er der Reihe nach abarbeitet, aber die Reihenfolge lässt sich für uns bei bestimmten komplexen Algorithmen einfacher in unserer Sprache festhalten.


Wenn ich nun in Java eine Applikation, also ein vom Rechner ausführbares Programm, schreiben möchte - und ich benutze hier Eclipse als Entwicklungsprogramm - dann brauche ich zuallererst einen Ort wo die vom Rechner abzuarbeitenden Anweisungen drinstehen und der heißt Datei. Die Datei wird mit mehreren Dateien zusammen in deinem übergeordneten Konstrukt das Projekt heißt einsortiert und steht neben anderen Dateien in diesem geschnürten Paket mit dem Namen Projekt. Jede dieser Dateien hat die Endung .java und man nennt sie in Java
Klassen. Außerdem gibt es andere Dinge (man könnte jetzt Objekte sagen, aber das ist falsch!!) in diesem Paket unteranderem z.B. eine Library. Die Library ist selbst auch ein Paket von mehreren Klassen, die man benutzen kann um sich programmierarbeit zu sparen weil jemand schon diese Klassen geschrieben hat.
Wenn ich nun diese Klassen (oder einzelne Kernstücke) aus der Library in eine von mir geschriebene Klasse implementieren will mache ich das, indem ich meine Klasse als eine Extension - also Erweiterung - der Klasse aus der Library deklariere. Meine Klasse kann dann genau das, was die Klasse in der Library auch kann, nur noch mehr weil ich ja auch mehr reinschreibe. Man muss feststellen, dass eine Klasse an sich erstmal nichts tut, sondern in der Klasse selbst - also in der Datei .java - werden Objekte reingeschrieben und diese reagieren dann auf die Anweisungen vom Programmierer und von anderen Objekten, die man auch in die Klasse reingeschrieben hat. Objekte sind auch teil eines gedachten Konstrukts und zwar könnte man ein GLabel allgemein als jedes Objekt was Text anzeigt klassifizieren. Die Klasse der GLabel steht also außerhalb von meiner Klasse und auch außerhalb von der Klasse aus der Library (ist aber trotzdem mit drin in der Library als Paket geschnürt). Erst wenn ich in meine Klasse reinschreibe, dass der Compiler ein neues Objekt contstructen soll (mit dem befehl new), dann heißt das partikuläre GLabel("Hallo Welt", 100, 75) eine Instanz der Klasse GLabel, gehört aber nicht zu meiner Klasse die auf .java endet.
Wenn ich nun also in Eclipse eine neue Klasse generiere heißt das auf gut Deutsch nichts anderes als: ich schreibe ein Programm, einen Ablauf und nicht ich bilde eine neue Klasse. Aber warum kann ich dann in eine .java datei die eine KLASSE ist andere Klassen reinschreiben?
Und warum schreiben alle Lehrbücher dass Instanzen Objekte einer Klasse sind die aus meiner public definierten Klasse kommen?

Ich brauche ein anschauliches, richtiges und in der Sprache eindeutiges Beispiel was ich nun verstehen kann unter Klasse, Instanz und Objekt.

Ich kann ja auch so argumentieren.
Wenn meine Klasse "Autos" ist, dann ist "VW-Golf" eine Subklasse. Kein Problem, soweit reicht es noch. Doch wie nennt man dann Reifen, die nicht nur in der Klasse "Autos" verfügbar sind, sondern auch in der Klasse "LKWs"? Was sind Objekte??

Danke fürs lesen und ich hoffe ihr könnt mir helfen.


pn
Gast 
04.05.2012, 10:06
zitieren

Mach mit!

Wenn Dir die Beiträge zum Thread "Objektorientiertes Programmieren in Java" gefallen haben oder Du noch Fragen hast oder Ergänzungen machen möchtest, solltest Du Dich gleich bei uns anmelden:



Registrierte Mitglieder genießen die folgenden Vorteile:
✔ kostenlose Mitgliedschaft
keine Werbung
✔ direkter Austausch mit Gleichgesinnten
✔ neue Fragen stellen oder Diskussionen starten
✔ schnelle Hilfe bei Problemen
✔ Bilder und Videos hochladen
✔ und vieles mehr...


Neuen Thread eröffnenNeue Antwort erstellen
Ähnliche BeiträgeRe:
Letzter Beitrag
Galton-Brett programmieren (Java, PHP)
Hallo, wie der Titel schon aussagt, geht es hier um das Galton-Brett. Ich habe dieses schon in vielen Simulationen gesehen und möchte nun selbst eine Simulation über php und java erstellen, so simpel wie möglich (*anfänger*). Allerdings benötige ich...
[Projekte]von brillux
1
466
07.03.2014, 17:13
mgutt
x-root Software GmbH sucht Java/Java EE Softwareentwicklung
Wir suchen zwei Java/Java EE Softwareentwickler (m/w) [München und Rosenheim] Wer ist die x-root Software GmbH? Die x-root Software GmbH mit ihrem Sitz in Rosenheim entwickelt individualisierte betriebliche Informationssysteme, technische...
[Jobs & Stellenangebote]von 1000jobboersen.de
0
781
30.06.2011, 15:26
1000jobboersen.de
Java-Profi - Java-Softwareentwickler / Consultant (m/w)
GEBIT Solutions ist Experte für Objekt- und Java-Technologien und realisiert seit über 20 Jahren unternehmensspezifische Anwendungen und innovative Lösungen. Renommierte Kunden wie z. B. ALDI SÜD, dm-drogerie markt und OBI schätzen unser erstklassiges...
[Jobs & Stellenangebote]von kimjob
0
449
12.12.2014, 17:01
kimjob
JAVA Softwareentwickler / JAVA Softwareentwicklerin
Die online directory service gmbh ist Rechenzentrumsbetreiber für die Online-Verzeichnis-Publikationen dastelefonbuch.de, gelbeseiten.de, dasoertliche.de sowie Entwicklungszentrum für gelbeseiten.de und weitere innovative Produkte im Bereich der...
[Jobs & Stellenangebote]von kimjob
0
369
01.09.2014, 13:20
kimjob
Java Entwickler / Java Entwicklerin
Bei uns sind Sie zu Hause - uniVersa VERSICHERUNGEN Wir bauen unsere hervorragende Marktposition weiter aus und suchen für unsere Inhouse-IT in unserer Unternehmenszentrale in Nürnberg eine/n Java-Entwickler/in Ihre Aufgaben • Neu- und Weiterentwicklung...
[Jobs & Stellenangebote]von kimjob
0
359
22.06.2015, 14:21
kimjob
 Java Developer / Java Entwickler (m/w)
Standort: Berlin Arbeitszeit: Vollzeit Frühester Eintrittstermin: ab sofort bzw. nach Vereinbarung Vertragslaufzeit: unbefristet Java Developer / Java Entwickler (m/w) Die Stärken der LucaNet AG liegen in der Entwicklung von Software und in der Beratung...
[Jobs & Stellenangebote]von 1000jobboersen.de
0
440
01.07.2015, 14:04
1000jobboersen.de
Smarthphon programmieren
Hallo, ich möchte gerne eine Kontaktbörse auf einen Smartphone starten. Mit was für eine Programmiersprache muss ich rechnen? Ich frage deshalb weil mein Onkel (ich selbst kann keine Programmiersprache) nur HTML programmieren kann. Reicht HTML? Ich hoffe...
[Allgemein]von kossi71
1
389
20.03.2014, 09:46
Toasty
Laptop zum Programmieren
Hallo, ich bin auf der Suche nach einem Laptop, womit man gut und flüssig programmieren kann. Da ich ständig am pendeln bin und stundenlang im Zug sitze, brauche ich ein Laptop das zwischen 13 und 14 Zoll ist. Was würdet ihr da so...
Seite 2 [Allgemein]von managerman
18
7.483
13.12.2011, 20:12
managerman
Smalltalk programmieren
Hallo, kann mir jemand helfen, muss folgende Aufgabe in der Programmiersprache Smalltalk schreiben: Der Benutzer muss zwei Zahlen eingeben (GUI oder Konsole) : Anfangstemperatur, Endtemperatur ( in °C). Plausibilitätsprüfung: Keine Eingabe darf...
[Allgemein]von mlrecords
0
712
28.03.2011, 13:10
mlrecords
tacho Programmieren
Hy leute, Ich habe mir etzt einen facelift DC5 Tacho besorgt und wollte fragen ob jemand hier im Forum unterwegs ist und den Guten auf die gewünschte KM-Zahl einstellen...
von Kwik-A-Mart
5
354
25.12.2012, 20:44
Hondafreak249
© 2004 - 2025 www.programmierer-forum.de | Communities | Impressum |