Das Video kommt von YouTube: erst beim Abspielen verbindet sich die Seite mit YouTube (Google).
Konstruktor in Java - Java Programmieren Lernen - 15
Das Wichtigste aus dem Video
Tipp auf eine Zeit – das Video springt genau dorthin.
Transkriptautomatisch erstellt · 88 Zeilen
- du möchtest schlüssig und ohne probleme jahre programmieren lernen herzlich willkommen dann bist du auf diesem kanal genau richtig im letzten video haben wir
- uns mit klassen deren objekten und genauer gesagt mit dem methoden teil von objekten beschäftigt und im heutigen video soll es um den attribut teil von
- klassen beziehungsweise von objekten gehen dabei möchte ich dir ein konzept vorstellen dass für den anfang vielleicht ein wenig schwer zu verstehen
- ist aber von grundlegender bedeutung ist dass er werde ich da in diesem video genau darauf eingehen dieses konzept nennt sich konstrukt uhr starten wir
- also in dem ich das hier einmal löcher wir nennen unsere hunde objekt jetzt einfach labrador und heute wollen wir uns mit dem attribut teil von projekten
- beschäftigen bis jetzt haben wir diese attribute nur deklariert aber noch nicht initialisiert das heißt wir haben ihn noch keinen
- bestimmten wert zugewiesen und fragst du dich ja okay wenn wir hier unsere variablen deklariert haben warum können wir nicht einfach werden können hier zum
- beispiel schreiben und alters gleich vier oder in tat ist gleich mops was weiß ich nicht was das problem hierbei ist wenn du dir das video zur theorie
- hinter objektorientierung an geschaut hast dass jedes objekt einer klasse erst durch ihre attribute einzigartig wird und wenn wir den attributen in der
- klasse schon werte zu weisen dann hat jedes objekt dieser klasse diese werte und die objekte sind in dem sinne nicht mehr einzigartig deshalb
- müssen wir einen anderen weg finden jedem objekt unterschiedliche werte zuweisen zu gehört ein einfacher aber unglaublich effizienter weg wer ist wenn
- wir zum beispiel schreiben würden labrador punkt alter und dann diesem alter dem wert zu weisen jetzt zum beispiel vier und wir dann schreiben
- labrador punkte bis gleich labrador labrador punkt fellfarbe ist gleich schwarz und kann foto geben ist gleich nun haben wir uns
- ein labrador objekt erstellt das einzigartige werte hat wir könnten uns jetzt noch 100 erstellen dass wir dann zum beispiel dackel nennen und den ganz
- andere werte als dem von dem labrador zu weisen dadurch haben wir einzigartige objekte geschaffen also ist also auf jeden fall
- das problem ist so siehst schon um ein objekt zu erstellen haben wir hier fünf zeilen code gebraucht und das schreibt sich nicht schön es ist sehr aufwendig
- und macht auf dauer einfach keinen spaß deshalb stelle ich dir jetzt ein konzept vor besonders ich habe mich damit am anfang unglaublich schwer getan das
- nennt sich konstrukteur und im konstrukt ohren zu verstehen müssen wir als erstes ein thema verstehen dass ich im letzten video schon kurz angerissen habe das ist
- die parameter übergabe bei methoden wenn ich jetzt so zum beispiel eine testmethode stelle dann können wir diese testmethode von unserem labrador aus
- aufrufen labrador punkt testmethode das ganze macht jetzt aber noch nichts weil wir eben noch keine parameter hier übergeben haben diese parameter
- schreiben wir in dieser runden klammern das heißt jedes mal wenn eine methode noch zusätzliche informationen von außen braucht schreiben wir diese
- informationen in form von datentypen in diese runden klammern hier bei uns hört das jetzt zum beispiel in italien kann bällen und den du siehst und elli gibt
- es hier schon ein fehler an den müssen wir jetzt in diese runden klammern schreiben und wir sagen jetzt in dem fall
- true und helle jay sagt ja auch gleich den namen also die bedeutung des datentypen den durch hierüber gibt und wir sagen jetzt ist kann band dann führe
- die bellen methode aus du siehst methoden kann man von innerhalb der klasse ganz einfach aufrufen indem man ihre namen schreibt und parameter
- übergibt wenn diese zu übergeben sind ist bei bilden jetzt nicht der fall und wenn das ganze einmal starten dann siehst du wird wofür ausgegeben wenn wir
- zum beispiel der methode noch einen string übergeben die nennen wir jetzt mal einfach und wir jetzt sagen wir brauchen in unserer
- bällen methode auch genau diesen string wir wollen jetzt nicht wofür ausgeben sondern das was der methode hierüber geben wird und zwar dieser welt string
- wird dann dieses mal einfach weiterreichen und wir hin und schreiben war dann wird war ausgegeben du siehst also dass diese parameter übergabe auch
- über mehrere methoden hinweg funktioniert hier ist es zum beispiel dieses string objekt was wir zuerst der testmethode im labrador übergeben dann
- schaut diese methode ob der hund überhaupt bringen kann und wenn er wählen kann dann führt er seine eigene bällen
- methode aus und übergibt hielt diesen bäll string an welche methode und wird dann letztendlich ausgegeben so also
- funktioniert die parameter übergabe bei methoden und dieses wissen brauchst du nun um den konstrukteur zu verstehen die konstrukteure methode das ist eine
- besondere methode und deshalb schreibt man sie meistens zwischen den attribut teil von klassen der man oben steht und den methoden teil von klassen der mann
- darunter steht also kommt hier der konstrukteur hin und unsere konstruktive methode deklarieren wir jetzt wie folgt beschreiben public und jetzt hast du
- gelernt braucht jede methode diesen rückgabe typen denn wir mal fortgesetzt haben und zu denen später noch ein video com und der konstrukteur braucht diesen
- rückgabe typen nicht das heißt das programm weiß dass die methode der konstrukteur ist in dem wir beim konstrukteur diesen rückgabe typen hier
- weglassen und die konstruktive methode die kann man jetzt nicht irgendwie nennen nein man muss sie genauso nennen wie den namen der klasse wir schreiben
- also public und setzen wieder gewohnt unsere klammern und haben damit unseren konstrukteur erstellt der konstrukteur ist deshalb so besonders weil er die
- aufgabe hat ganze objekte zu initialisieren ich habe ja schon gesagt dass der konstrukteur immer in verbindung mit den
- attributen steht was wir jetzt machen wollen wir wollen uns genau diese ganze schreibarbeit hier sparen indem wir
- diese logik hier in den konstrukteur schreiben wie machen wir das die idee seit dem konstrukteur ist folgende übergeben ihm in den klammern werte und
- diese werte weisen wir dann den variablen vom objekt zu wie machen wir das wenn wir hier also dem konstrukteur ein alter übergeben dann meckert in
- teltow erstmal schon zeige ich dir nachher wie so und jetzt wollen wir dieses alter hier gleich dem alter vom objekt setzen
- dann schreiben wir einfach bis punkt alter ist gleich alter diese zeile code ist es die mich am anfang so sehr verwirrt hat im grunde
- genommen ist der war ganz einfach zu verstehen du weißt ja wir haben das problem dass wir uns diese ganzen zeilen hier sparen
- wollen und diese zeilen hier sparen wir uns durch den konstrukteur und zwar indem er mit dem konstrukt ohr alle variablen übergeben die auch in der
- klasse definiert sind und dann das alter von diesem objekt gleich dem übergebende malta gesetzt wird welche bedeutung hat nun also diese zeile code hier nun damit
- wir nicht durcheinanderkommen geben wir den variablen die wir hier dem konstrukteur übergeben immer genau die gleichen namen wie den variablen der
- klasse und damit wir nun dieser variablen vom objekt und den wert der übergebenen variablen zuweisen können müssen wir schreiben dieses punkt alter
- ist gleich alter und du siehst es an diesen beiden farben hier einmal weist das programm das wir von diesem rosen alter hier
- hier oben sprechen und beim zweiten mal weiß es dass wir von diesem übergebenen alter aus der methode sprechen und das funktioniert durch dieses ein bisschen
- denn das sagt dem programm ok nimm die die variable die im objekt deklariertes nicht die die übergeben wird
- und setzen sie dann mit dem übergebenen wert gleich ich schreibe das jetzt einmal auch noch für die anderen variablen hin und dann gehen wir das
- ganze einmal durch und dann wird es wesentlich klarer du siehst übergeben den konstrukteur also zu jedem seine attribute einen
- bestimmten wert und weisen dann dem attribut aus diesem objekt diesen wert hier gleich und das machen wir immer durch das schlüsselwort bis dann den
- namen unserer variablen hier und dann dem konstrukteur überwiesenen wert so und das ist wieder konstrukteur aussieht wie gesagt das ist kein hexenwerk aber
- dieses verständnis der übergabe von werten und das gleichsetzen hier mit diesem biss und so da musst du eben ein bisschen rum spielen bist du es dann
- voll verstanden hast was können wir mit unserem konstrukteur also jetzt anfangen ich habe ja schon gesagt dass der konstrukteur eine besondere methode ist
- und deshalb werden die werte auch an einer besonderen stelle übergeben und zwar hier bei der initialisierung von dem neuen hund objekt die werte
- schreiben wir nämlich einfach jetzt in diese klammer du siehst schon diese rot wellenlinie die bedeutet dass er jetzt eben aufgrund von dem konstrukt ohr
- diese vier werte hier erwartet damit das programm eben diesen werten seinen variablen zuweisen kann wir schreiben nun also 4 labrador
- schwarz und true und ich mache ich hier mal ein absatz damit du es besser lesen kannst nun haben wir unserem labrador durch den konstrukteur diese ganzen
- werte hier zugewiesen und uns damit diese zeilen hier gespart und du siehst im dem sinne ist diese zeile hier labrador also der verweis aufs objekt
- punkt alter ist gleich vier nichts anderes als die zeile die wir hier auch im konstrukteur geschrieben haben nur schreiben wir nun wissen und nicht
- labrador es ist aber beides der verweis auf das eigene objekt punkt ist gleich alter und das sehr genau der wert den wir hier bald geben also um dem sinne
- auch 4 deshalb können wir uns jetzt diesen ganzen zeilen hier sparen und als beweis dafür dass das ganze funktioniert hat
- können wir jetzt die werte vom labrador ausgeben der labrador ist dann das alter vom labrador jahre alt und wenn wir das ganze starten
- dann siehst du wird das ganze hier aus gehen und ich habe es noch ein leerzeichen vergessen und du siehst hier der labrador ist vier jahre alt wie
- kommt das ganze herz nun der konstrukteur eben besonders für den anfang für dich wahrscheinlich auch kein leichtes thema gehe ich das ganze jetzt
- noch ein letztes mal mitten durch also übergeben dem konstrukteur hier für die variable alter den wert 4 dieser wert vier kommt jetzt also hier
- im objekt an und nichts punkt alter wird jetzt eben diesen übergebenen wert 4 gleichgesetzt und das punkt alter ist ihr einfach eine referenz auf genau
- diese variable und auf die können wir eben mit labrador punkt alter zu greifen das war es auch so weit mit der erklärung zu konstrukteuren er zeige ich
- dir noch eine kleine spielerei wenn wir uns hier noch ein paar andere objekte erstellen dafür ein danke der ist braun ist und wir sagen wir wollen ein mops
- was wir jetzt mit diesen drei verschiedenen objekten anstellen können ist wir können uns damit ein hund erstellen schreiben also hund dann diese
- eckigen klammern kunde ist gleich jetzt einfach diese kurz schreibweise aber geschwächte klammern danke wir haben uns nun also ein hund
- mit diesen drei kunden herstellt und was wir jetzt damit machen können wir können zum beispiel ganz leicht herausfinden welche arten von hunden wir haben und
- die finden wir indem wir jetzt unsere ray auslesen dafür benutzten wir einfach wieder eine vor schleife und jetzt schreiben wir einfach hunde
- und damit wird jetzt eben nach und nach auf jedes dieser objekte hier verwiesen und jetzt punkte und damit gibt uns das programm alle arten von hunden aus die
- wir hier in unserem hund ray gespeichert haben eine andere kleine spielerei ist dass wir jetzt zum beispiel schreiben wie viele hunde können fothen geben wenn
- du dass sie eben selbst programmieren möchtest dann was ich dir kurzzeit das video zu pausieren ansonsten zeigte eben die lösung und
- zwar zu mir dafür wieder unsere vor schleife was wir jetzt aber brauchen ist ein counter der eben jetzt die anzahl der ohne die toten geben kann speichert
- was wir jetzt machen müssen ist wenn der hund der wir hier referenzieren also hunde wie wenn der foto geben kann dann vom discounter um 1 erhöhen und am ende
- wollen wir einfach counter ausgeben wenn wir das ganze hier starten dann siehst du wird eins ausgegeben gut das heißt mit dem heutigen video zu
- attributen und konstrukteuren ich weiß konstrukteuren sind für den anfang ein sehr schwieriges thema und mein tipp an dich erstelle dir einfach selbst ein
- paar klassen und entsprechender konstrukteuren dafür und wenn du das ein paar mal gemacht hast dann wird es dir wie das natürlichste der welt vorkommen
- wie immer wenn du fragen hast schreibe mir eine nachricht oder postition in die kommentare wenn ihr das video gefallen hat und du
- heute etwas gelernt hast dann nach dem video einen daumen nach oben da und wenn du heute alles verstanden hast dann sehen wir zum nächsten video