Variablen Unterschied zwischen lokalen-, Instanz-, Klassenvariablen

J

Javaman91

Bekanntes Mitglied
Hallo,

ich habe mich gerade mit den einzelnen Variablen beschäftigt.

Nun wollte ich euch fragen, ob das so korrekt ist:

1. Lokale Variablen:

Lokale Variablen sind Variablen die innerhalb einer Methode verwendet werden.

Java:
public void BeispielMethode(){

int i =0; //lokale Variable

}

Sie können nur von dieser Methode verwendet werden und müssen vom Programmierer initialisiert (Wertzuweisung) werden.

2. Klassenvariablen:

Klassenvariablen werden innerhalb einer Klasse angelegt und können von jeder Methode wie auch von jedem Objekt dieser Klasse verwendet werden.

Beispiel für eine Klassenvariable:

Java:
public static int name;

Der Zugriffsmodifikator "static" sagt aus das es sich bei dieser Variable um einen Klassenvariable handelt.

Klassenvariablen werden automatisch initialisiert.

3. Instanzvariablen:

Instanzvariablen werden ebenfalls in einer Klasse angelegt.
Sie werden nur von Objekten verwenden, diese speichern ihre Eigenschaften darin ab.
Eine Instanzvariable ist für alle Objekte einer Klasse zugänglich.

Beispiel:

Ich habe z.B. drei Objekte und eine Instanzvariable deklariert, dann können alle drei Objekte auf diese eine Instanzvariable zugreifen.

So sieht eine Instanzvariable aus:

Java:
public int zahl;

Hier muss auf das Schlüsselwort "static" verzichtet werden.

Ich hoffe, dass ich das so halbwegs erklären konnte?

MfG
 
K

kneitzel

Gast
Ja, das hört sich soweit richtig an. Lediglich bezüglich der Zugriffsmöglichkeiten ist es etwas ungenau.

Und bei deinem Beispiel: Wenn Du 3 Instanzen einer Klasse hast, dann hat jede Klasse natürlich seine eigene Instanzvariable. Bei deinem Beispiel hörte sich das etwas so an, als ob die sich eine Variable teilen würden.
 
J

Javaman91

Bekanntes Mitglied
O.K.

Was stimmt bei den Zugriffsmöglichkeitn nicht?

Ich habe geschrieben, das sich alle drei Objekte eine Instanzvariable teilen. Nicht die Klassen.
Wenn ich z.B. drei Objekte habe aber nur eine Instanzvariable, dann können alle drei Objekte auf diese eine Instanzvariable zugreifen.

Sollte doch eigentlich so sein oder nicht??
 
M

Meniskusschaden

Top Contributor
Nein, wenn du in der Klasse eine Instanzvariable deklariert hast, enthält jedes Objekt (also jede Instanz) dieser Klasse eine eigene Instanzvariable. Das Objekt kann auf die eigene Instanzvariable zugreifen. Ob es auf die Instanzvariablen der anderen Objekte zugreifen kann, hängt vom Zugriffsmodifikator ab.
 
K

kneitzel

Gast
Die Instazvariablen sind sozusagen der Zustand und die Eigenschaften eines Objektes. Ein Auto hat eine Farbe. Aber von Auto zu Auto ist die Farbe unterschiedlich. Es teilen sich nicht alle Autos eine Farbe.

Und Zugriffsmöglichkeiten bezeichnet ja doch deutlich mehr. Dafür gibt es ja public / private und so. Also die Frage ist, wer auf die Variablen zugreifen kann. Ob es nur aus der eigenen Klasse (private), auch von abgeleiteten Klassen (protected) oder nur aus dem Package (nix davor geschrieben) oder von überall (public) zugegriffen werden kann - das würde ich als Zugriffsmöglichkeiten bezeichnen.
 
J

Javaman91

Bekanntes Mitglied
Achso,

dass heißt wenn ich es im Programm nur einmal hinschreibe:

Java:
public int größe;

bekommt in Wahrheit jedes Objekt eine eigene Instanzvariable.
Das heißt es gibt die Instantzvariable "int größe" eigentlich 3 Mal.
Hätte ich z.B. 5 Objekte, dann gebe es diese Variable 5 Mal usw.

Würde ich in das Programm noch eine zweite Variable hinzufügen z.B.:

Java:
public int größe;
Java:
public int gewicht;

dann würde hier jedes Objekt eine eigene Instanzvariable von "int größe" & "int gewicht" bekommen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Y Unterschied zwischen WindowBuilder und herkömmlichen erstellen des GUI´s? Java Basics - Anfänger-Themen 9
U Worin besteht der Unterschied zwischen call by reference und call by value? Java Basics - Anfänger-Themen 14
E Unterschied zwischen new und import Java Basics - Anfänger-Themen 5
B Unterschied zwischen (List<T> a) und (T[] a) Java Basics - Anfänger-Themen 7
Aprendiendo Unterschied zwischen Referenzvariable und Instanzvariable. Java Basics - Anfänger-Themen 2
N Unterschied zwischen Checked und Unchecked Exceptions Java Basics - Anfänger-Themen 12
schoenosrockos Unterschied zwischen Objekten und vererbungen Java Basics - Anfänger-Themen 1
L Unterschied zwischen Klassen - und Instanzvarbiablen Java Basics - Anfänger-Themen 1
M Unterschied zwischen Classpath eines Eclipse Projektes und dem CLASSPATH? Java Basics - Anfänger-Themen 3
D Unterschied zwischen double und Double Java Basics - Anfänger-Themen 4
Q Unterschied zwischen static und keinem Modifier Java Basics - Anfänger-Themen 15
K Unterschied zwischen Jar, war und ear Dateien Java Basics - Anfänger-Themen 3
T Unterschied zwischen Integrationstest und JUnit test? Java Basics - Anfänger-Themen 12
K Unterschied zwischen break und continue in einer Schleife Java Basics - Anfänger-Themen 14
F Exakte Unterschied zwischen Java EE und Java SE? Java Basics - Anfänger-Themen 4
J Unterschied zwischen statische und nicht statische Methoden? Java Basics - Anfänger-Themen 14
O Java unterschied zwischen Interface und Interface_Referenzen!!?? Java Basics - Anfänger-Themen 7
J unterschied zwischen awt und swing Java Basics - Anfänger-Themen 6
B Unterschied zwischen String & char Array? Java Basics - Anfänger-Themen 5
B Was ist der unterschied zwischen Singleton und Strategy? Java Basics - Anfänger-Themen 6
B Variablen: unterschied zwischen Klassen und Instanzvariable Java Basics - Anfänger-Themen 2
H Unterschied zwischen 2 Date in Sekunden am einfachsten? Java Basics - Anfänger-Themen 5
tanja Der Unterschied Zwischen Arrays in Java und ADA Java Basics - Anfänger-Themen 11
ModellbahnerTT Unterschied zwischen zwei Frame close Varianten Java Basics - Anfänger-Themen 3
V Unterschied zwischen J2EE und JEE ?? Java Basics - Anfänger-Themen 1
N Was ist der Unterschied zwischen ArrayList und Vector? Java Basics - Anfänger-Themen 3
A Unterschied zwischen Checked und unchecked Exception Java Basics - Anfänger-Themen 3
C Unterschied zwischen Polymorphie und Typcasting Java Basics - Anfänger-Themen 10
G Unterschied zwischen den Datenstrukturen Java Basics - Anfänger-Themen 2
M Unterschied zwischen . Compiler und JIT-Compiler,Hotspot-VM Java Basics - Anfänger-Themen 2
C Unterschied zwischen ArrayList und Vector Java Basics - Anfänger-Themen 2
I_Oscuridad Unterschied zwischen Objektorientiert und prozedural ? Java Basics - Anfänger-Themen 8
G Was ist der unterschied zwischen return und ? Java Basics - Anfänger-Themen 3
G Unterschied zwischen Java 2 bis 6 Java Basics - Anfänger-Themen 12
G Unterschied zwischen SwingWorker und "normalem" Th Java Basics - Anfänger-Themen 3
J Unterschied zwischen 2 Grafik Methoden Java Basics - Anfänger-Themen 2
G unterschied zwischen in.read() und in.read(byte [] b, int. Java Basics - Anfänger-Themen 3
G Unterschied zwischen SQL Timestamp und Java Java Basics - Anfänger-Themen 2
A Unterschied zwischen HashMap und Hashtable Java Basics - Anfänger-Themen 20
G Unterschied zwischen Assoziation, Aggregation u. Komposition Java Basics - Anfänger-Themen 7
G Unterschied zwischen & und && Java Basics - Anfänger-Themen 1
G Unterschied zwischen Ant und Maven Java Basics - Anfänger-Themen 9
K Unterschied zwischen Color.white und Color.WHITE? Java Basics - Anfänger-Themen 4
A Unterschied zwischen String & Stringbuffer! Java Basics - Anfänger-Themen 14
O Unterschied zwischen static und public Java Basics - Anfänger-Themen 2
G Was ist der Unterschied zwischen length und length()? Java Basics - Anfänger-Themen 7
N Unterschied zwischen Beans finden Java Basics - Anfänger-Themen 2
L Unterschied zwischen Objekten, Arrays und Strings Java Basics - Anfänger-Themen 2
G Unterschied zwischen Integer und int in java Java Basics - Anfänger-Themen 8
C Unterschied zwischen, Applet, Java und JavaScript Java Basics - Anfänger-Themen 3
K gibt es einen unterschied zwischen .JAVA und .java ? Java Basics - Anfänger-Themen 4
ven000m Unterschied zwischen: ADT & generischer Programmierung Java Basics - Anfänger-Themen 2
H Unterschied zwischen Stack und Array Java Basics - Anfänger-Themen 3
M Unterschied zwischen J2SE 5.0 Update x und J2SE 1.4.x Java Basics - Anfänger-Themen 4
C Unterschied zwischen equals und == ? Java Basics - Anfänger-Themen 6
D Unterschied zwischen Referenz auf Objekt/Instanz von Objekt Java Basics - Anfänger-Themen 9
G verstehe den unterschied zwischen equals und == nicht Java Basics - Anfänger-Themen 3
P Unterschied zwischen Interface und Vererbung und Sinn? Java Basics - Anfänger-Themen 5
M Unterschied zwischen J2SE, JSEE und JDK Java Basics - Anfänger-Themen 8
R Unterschied zwischen a++ und ++a Java Basics - Anfänger-Themen 9
G Unterschied zwischen homogenen und heterogenen Liste Java Basics - Anfänger-Themen 9
D Unterschied zwischen Ziffer und Zahl Java Basics - Anfänger-Themen 9
R Unterschied zwischen Integer und int Java Basics - Anfänger-Themen 6
B Was ist der Unterschied zwischen .java- und .class Dateien Java Basics - Anfänger-Themen 3
G Methoden wo ist der Unterschied?? Java Basics - Anfänger-Themen 11
D Unterschied charAt() substr() Java Basics - Anfänger-Themen 3
D Unterschied == und equals in Arrays Java Basics - Anfänger-Themen 2
H Unterschied Konstruktor und Klassenname x = new Klassenname; Java Basics - Anfänger-Themen 3
H .jar unterschied .class Java Basics - Anfänger-Themen 3
O Unterschied Arrays, Listen, Mengen Java Basics - Anfänger-Themen 24
K Unterschied for-Schleife Java Basics - Anfänger-Themen 14
M Schlüsselworte Unterschied: String.matches und Pattern.compile Java Basics - Anfänger-Themen 2
G Unterschied Instanz- Klassenvariable Java Basics - Anfänger-Themen 11
C Methoden Unterschied zwichen public int, public static int und public static void Java Basics - Anfänger-Themen 2
H Unterschied BufferedReader und BufferedInputStream Java Basics - Anfänger-Themen 4
N Unterschied von Post- und Preinkrement Java Basics - Anfänger-Themen 3
T Unterschied dynamischer und statischer Laufzeittyp Java Basics - Anfänger-Themen 1
D Unterschied Date - Calendar Java Basics - Anfänger-Themen 1
J Warum ist das ein Unterschied (Integer / int) Java Basics - Anfänger-Themen 2
S Erste Schritte Unterschied "if" und "else if" Java Basics - Anfänger-Themen 27
F Erste Schritte Unterschied: Array "leer" / "null" Java Basics - Anfänger-Themen 3
V Unterschied x++ und x=x++ Java Basics - Anfänger-Themen 6
O Unterschied Baum <-> Automat Java Basics - Anfänger-Themen 2
A Klassen Unterschied Warteschlange, Stapel und Liste Java Basics - Anfänger-Themen 3
M Wo liegt der Unterschied? Deklaration Klasse oder Konstruktur Java Basics - Anfänger-Themen 3
S Unterschied print() und println() Java Basics - Anfänger-Themen 3
S Unterschied .jar Datei ausführen und junit Testfall... Java Basics - Anfänger-Themen 3
S Datentypen Unterschied elementare und zusammengesetzte/strukturierte Datentypen Java Basics - Anfänger-Themen 5
S Unterschied Ausführung in IDE <-> Befehlszeile Java Basics - Anfänger-Themen 0
C Unterschied Objekte! Java Basics - Anfänger-Themen 13
A Unterschied Textdatei und Quelltextdatei Java Basics - Anfänger-Themen 5
R Erste Schritte Unterschied Array-Parameter zu Array als Parameter? Java Basics - Anfänger-Themen 7
V Unterschied Array & ArrayList Java Basics - Anfänger-Themen 13
D Geschwindigkeits unterschied bei import? Java Basics - Anfänger-Themen 13
L Unterschied zu C++ Java Basics - Anfänger-Themen 6
A Unterschied JDK SDK Java Basics - Anfänger-Themen 4
L Objekterzeugung Unterschied..? Java Basics - Anfänger-Themen 6
B Klassen Unterschied Konstruktoren. Java Basics - Anfänger-Themen 3
S Interface Unterschied: setContentPane() & getContentPane().add Java Basics - Anfänger-Themen 5
Helgon Unterschied runnable und normale jar Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Anzeige

Neue Themen


Oben