Zum Inhalt springen
L

Das Video kommt von YouTube: erst beim Abspielen verbindet sich die Seite mit YouTube (Google).

Konstruktor in Java - Java Programmieren Lernen - 15

Jonas Keil13:06 75.660 Aufrufe veröffentlicht Auf YouTube

Das Wichtigste aus dem Video

Tipp auf eine Zeit – das Video springt genau dorthin.

Transkriptautomatisch erstellt · 88 Zeilen
Herunterladen
  1. 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
  2. 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
  3. klassen beziehungsweise von objekten gehen dabei möchte ich dir ein konzept vorstellen dass für den anfang vielleicht ein wenig schwer zu verstehen
  4. 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
  5. 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
  6. beschäftigen bis jetzt haben wir diese attribute nur deklariert aber noch nicht initialisiert das heißt wir haben ihn noch keinen
  7. 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
  8. 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
  9. hinter objektorientierung an geschaut hast dass jedes objekt einer klasse erst durch ihre attribute einzigartig wird und wenn wir den attributen in der
  10. klasse schon werte zu weisen dann hat jedes objekt dieser klasse diese werte und die objekte sind in dem sinne nicht mehr einzigartig deshalb
  11. müssen wir einen anderen weg finden jedem objekt unterschiedliche werte zuweisen zu gehört ein einfacher aber unglaublich effizienter weg wer ist wenn
  12. 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
  13. labrador punkte bis gleich labrador labrador punkt fellfarbe ist gleich schwarz und kann foto geben ist gleich nun haben wir uns
  14. 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
  15. andere werte als dem von dem labrador zu weisen dadurch haben wir einzigartige objekte geschaffen also ist also auf jeden fall
  16. 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
  17. 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
  18. 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
  19. die parameter übergabe bei methoden wenn ich jetzt so zum beispiel eine testmethode stelle dann können wir diese testmethode von unserem labrador aus
  20. aufrufen labrador punkt testmethode das ganze macht jetzt aber noch nichts weil wir eben noch keine parameter hier übergeben haben diese parameter
  21. 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
  22. 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
  23. es hier schon ein fehler an den müssen wir jetzt in diese runden klammern schreiben und wir sagen jetzt in dem fall
  24. 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
  25. die bellen methode aus du siehst methoden kann man von innerhalb der klasse ganz einfach aufrufen indem man ihre namen schreibt und parameter
  26. ü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
  27. zum beispiel der methode noch einen string übergeben die nennen wir jetzt mal einfach und wir jetzt sagen wir brauchen in unserer
  28. 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
  29. wird dann dieses mal einfach weiterreichen und wir hin und schreiben war dann wird war ausgegeben du siehst also dass diese parameter übergabe auch
  30. über mehrere methoden hinweg funktioniert hier ist es zum beispiel dieses string objekt was wir zuerst der testmethode im labrador übergeben dann
  31. schaut diese methode ob der hund überhaupt bringen kann und wenn er wählen kann dann führt er seine eigene bällen
  32. methode aus und übergibt hielt diesen bäll string an welche methode und wird dann letztendlich ausgegeben so also
  33. funktioniert die parameter übergabe bei methoden und dieses wissen brauchst du nun um den konstrukteur zu verstehen die konstrukteure methode das ist eine
  34. 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
  35. darunter steht also kommt hier der konstrukteur hin und unsere konstruktive methode deklarieren wir jetzt wie folgt beschreiben public und jetzt hast du
  36. 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
  37. 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
  38. 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
  39. also public und setzen wieder gewohnt unsere klammern und haben damit unseren konstrukteur erstellt der konstrukteur ist deshalb so besonders weil er die
  40. aufgabe hat ganze objekte zu initialisieren ich habe ja schon gesagt dass der konstrukteur immer in verbindung mit den
  41. attributen steht was wir jetzt machen wollen wir wollen uns genau diese ganze schreibarbeit hier sparen indem wir
  42. 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
  43. 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
  44. teltow erstmal schon zeige ich dir nachher wie so und jetzt wollen wir dieses alter hier gleich dem alter vom objekt setzen
  45. 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
  46. genommen ist der war ganz einfach zu verstehen du weißt ja wir haben das problem dass wir uns diese ganzen zeilen hier sparen
  47. 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
  48. 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
  49. wir nicht durcheinanderkommen geben wir den variablen die wir hier dem konstrukteur übergeben immer genau die gleichen namen wie den variablen der
  50. 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
  51. ist gleich alter und du siehst es an diesen beiden farben hier einmal weist das programm das wir von diesem rosen alter hier
  52. 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
  53. denn das sagt dem programm ok nimm die die variable die im objekt deklariertes nicht die die übergeben wird
  54. 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
  55. ganze einmal durch und dann wird es wesentlich klarer du siehst übergeben den konstrukteur also zu jedem seine attribute einen
  56. 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
  57. namen unserer variablen hier und dann dem konstrukteur überwiesenen wert so und das ist wieder konstrukteur aussieht wie gesagt das ist kein hexenwerk aber
  58. 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
  59. 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
  60. und deshalb werden die werte auch an einer besonderen stelle übergeben und zwar hier bei der initialisierung von dem neuen hund objekt die werte
  61. 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
  62. diese vier werte hier erwartet damit das programm eben diesen werten seinen variablen zuweisen kann wir schreiben nun also 4 labrador
  63. 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
  64. 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
  65. 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
  66. 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
  67. auch 4 deshalb können wir uns jetzt diesen ganzen zeilen hier sparen und als beweis dafür dass das ganze funktioniert hat
  68. 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
  69. 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
  70. 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
  71. 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
  72. 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
  73. 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
  74. 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
  75. 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
  76. eckigen klammern kunde ist gleich jetzt einfach diese kurz schreibweise aber geschwächte klammern danke wir haben uns nun also ein hund
  77. 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
  78. die finden wir indem wir jetzt unsere ray auslesen dafür benutzten wir einfach wieder eine vor schleife und jetzt schreiben wir einfach hunde
  79. 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
  80. 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
  81. du dass sie eben selbst programmieren möchtest dann was ich dir kurzzeit das video zu pausieren ansonsten zeigte eben die lösung und
  82. 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
  83. 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
  84. 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
  85. 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
  86. 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
  87. wie immer wenn du fragen hast schreibe mir eine nachricht oder postition in die kommentare wenn ihr das video gefallen hat und du
  88. 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