Jetzt lerne ich Java 6

Eigenschaften von Klassen

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Da Eigenschaften eines Objekts im Java-Code einfach nur als Variablen deklariert und definiert werden müssen, unterschätzt man die Situation und läuft in eine Falle. - Sehen Sie sich an, wie es zum Begriff 'Instanzvariablen' kommt und welche Falle Helge Maus meint.
05:30

Transkript

Zurück zu unserem Konto-Beispiel, wir haben eben eine Kontoklasse gebaut. Diese Kontoklasse hat von uns Eigenschaften bekommen und Methoden. Ich möchte in diesem Film etwas mehr auf die Eigenschaften eingehen, die eine Klasse haben kann. Diese Kontoklasse hier hat von uns zwei Eigenschaften bekommen, einen double Kontostand Die Deklaration dieser Eigenschaften finden Sie hier im Kopf der Klasse, außerhalb jeglicher Methode. Dies ist sehr wichtig, denn wenn wir innerhalb einer Methode genau das Gleiche schreiben würden, zum Beispiel, hier wie double Kontostand würden wir einfach mal double Test nehmen, dann wäre das keine Eigenschaft, sondern eine Variable, damit haben Sie schon gearbeitet. Das bedeutet, trotz beide gleich aussehen, gibt es hier einen Unterschied. Diese Eigenschaften hier sind sogenannte Instanzvariablen. Das bedeutet, jede Instanz Spender des Kontos, also mein Konto, Ihr Konto, jemand anderes sein Konto wird jeweils einen eigenen Kontostand haben und das ist auch gut so. Es ist nicht unbedingt gut, wenn Sie meinen Kontostand benutzen würden und umgekehrt. Was heißt das nun in der Praxis? Nun, wenn ich hier ein Konto ableite, spricht eine Instanz Gründer ein Objekt von meiner Klasse-Konto, wenn wir sozusagen im Speicher des Computers einmal die Vorlage Konto, als die Klasse genommen und irgendwohin kopiert und dann dick einen Zettel draufgeklebt, das ist KTO und jetzt können wir hingehen und noch ein weiteres Konto anlegen und zwar das Konto von hmaus von Helge Maus, new Konto und da ich jetzt leider Ihren Namen nicht weiß, aber ich Ihnen trotzdem ein Konto machen möchte, nenne ich Sie einfach mal Zuschauer, Sie bekommen auch ein Konto. Jetzt haben wir also im Speicher insgesamt schon drei Objekte vom Typ Konto KTO, hmaus und Zuschauer und wir können jetzt allen dreien einen eigenen Kontostand geben. Ich gehe jetzt also hin, sage hmaus.setKontostand und sage mein Kontostand ist 33 Euro 75. Jetzt möchte ich Ihnen etwas gutes tun zuschauer.setKontostand und ich sage einfach mal 978 Euro 23 sollen Sie haben, hier natürlich einen Punkt hinein. Jetzt sehen Sie hat jede Instanz seinen eigenen Kontostand bekommen, denn diese Eigenschaften hier sind Instanzvariablen. Jede Instanz besitzt eigenen Kontostand und auf diese können Sie zugreifen. Entweder wie ich es hier gemacht habe, hier haben wir den Kontostand für KTO ausgelesen, wir können auch kurzerhand mal den Kontostand, von mir also von hmaus können wir ganz einfach feststellen, das ist der Kontostand von hmaus, dann müssen wir hier statt KTO, dann natürlich auf hmaus gehen und hier statt KTO auf Zuschauer. Also jeweils die Methode der Instanz nutzen und dann bekommen wir alle unseren Kontostand ausgegeben. Das heißt, diese Eigenschaften stecken jeweils in diesen einzelnen Instanzen daran. Wir können entweder zugreifen über die entsprechenden Methoden geführt eben natürlich von der Instanz oder wir können sogar darauf zugreifen. Da wir noch keine Zugriffsmodifizierer haben ich rufe hier nochmal meinen Kontostand auf, hmaus Kontostand. Ich kann auch direkt auf hmaus. es gibt die Eigenschaft Kontostand, auf diese kann ich natürlich auch direkt zugreifen, setze ich noch ein Plus und das angehängt wird und dann sehen Sie hier ganz unten im Moment ist der Zugriff als auch auf diese Eigenschaften noch offen. Das wird sich ändern, wenn wir später Zugriffsmodifizierer haben, also damit haben wir das System schon mal verstanden. Jetzt gibt es noch eine Sache, die wir beachten müssen. Ich lege mir hier an dieser Stelle ja bei der Methode eine Variable an, die den Wert aufnimmt, der von außen hereinkommt, den habe ich hier ein neue Konto genannt. Ich könnte diesen auch Kontostand nennen. Jetzt hätten wir jedoch ein kleines Problem, weil wir würden jeden sagen Kontostand, damit ist jetzt hier oben der gemeint, ist gleich Kontostand, der von hier kommt. Wir hätten zweimal Kontostand, aber einmal das was von außen kommt und hier die Eigenschaft. Wenn Sie unbedingt solche gleichen Namen haben wollen, so können Sie vor dieser Eigenschaft hier das Schlüsselwort this mit einem Punkt anhängen. Damit ist gemeint, ich meine die Eigenschaft Kontostand von mir selbst, von meinem eigenen Objekt, von meiner eigenen Instanz. Damit meine ich also hier oben den Kontostand, der in mir selber drinnen steckt. Das kann also sein, dass Sie das hin und wieder in Quellcodes finden. Sie können dieses Problem umgehen, indem Sie hier einfach einen anderen Namen verwenden. So viel zu den Eigenschaften von Klassen.

Jetzt lerne ich Java 6

Steigen Sie ein in die Programmierung mit Java 6, lernen Sie die Grundlagen kennen und unternehmen Sie anschließend Ihre ersten Schritte in der objektorientierten Programmierung.

12 Std. 27 min (98 Videos)
Derzeit sind keine Feedbacks vorhanden...

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!