statische Variablen

Status
Nicht offen für weitere Antworten.

Urs

Mitglied
Hallo, ich habe bis jetzt in C programmiert. Nun möchte ich in einer Methode bei Java eine statische Variable erzeugen, also nur in dieser Methode sichtbar (global innerhalb der Klasse aber nur sichtbar dieser Methode) Wie geht das in Java? Mit "int static temp = -1;" erhalte ich die Meldung "not a statement". Kann mir jemand helfen?
danke Urs
 
B

bygones

Gast
global für die Klasse aber nur sichtbar in der Methode ?

was soll das sein und bringen ?

entweder lokal in der Methode oder global für die gesamte Klasse...
 
G

gast

Gast
In Java ist das Schlüsselwort static nur für Membervariablen oder Methoden einer Klasse erlaubt. Eine Variable einer Methode darf nicht static sein.
 
S

stev.glasow

Gast
versuch mal

Code:
static int x = 0
void foo(){ 
    // mache was mit x
}

das ganz dann als seprate Quelldatei speichern, die Funktion foo sollte dann auch für andere Quelldateien sichbar sein, die Variable x aber nicht..

Ist keine schöne Lösung aber unschöne Lösung für unschönes Problem :wink:

vielleicht geht das aber auch anders ...
 

Bleiglanz

Gesperrter Benutzer
nein, es geht auch nicht anders

es gibt keine "Methoden-Statics", also Variablen, die nur in einer Methode sichbar sind aber Ihren Wert über einen Aufruf hinweg behalten

wozu auch? Das hat schon seinen Grund dass dieses fehlerträchte Feature nicht in Java aufgenommen wurde...

der workaraound von stevg ist der einzig mögliche, also eine static Variable (die aber dann in allen Methoden sichtbar ist) für solche zwecke missbrauchen
 

thE_29

Top Contributor
main.c:
Code:
#include "test.h"

int main()
{
	fkt();
	foo();
	printf("BLUB: %d != %d" ,i,b);
	return 0;
}

test.h:
Code:
static int i = 3;
int b = 2;


int fkt()
{
	printf("FKT::  %d %d\n",i,b);
	return 0;
}

static void foo()
{

	printf("FOO\n");
}

Ausgabe:
FKT:: 3 2
FOO
BLUB: 3 != 2

Soviel, zu dem dass das eigentlich net gehn soll....

So einen blödsinn Feature habe ich sowieso noch nie gehört..
 
S

stev.glasow

Gast
grrr
So einen blödsinn Feature habe ich sowieso noch nie gehört...
Ich schon, static wird in jedem blöden C-Tutorial so beschrieben.

Aber keine Ahnung warum das bei dir geht, hab keinen C Compiler hier kenne mich mit C auch nicht so aus . Aber in 'C/C++ Entpackt' steht das viele C++ Compiler das ignorieren, benutz du vieleicht einen C++ Compiler, wenn ja kann man da vielleicht einstellen das er sich an ANSI C halten soll? Vielleicht verstehen die auch unter einer seperaten Datei etwas anderes.
Übrigens steht hier auch wie man eine global Variable nur für eine Funktion gültig macht:

Code:
void foo(){
    static int a = 0;
    a++;
   printf("%d\n",a); 
}

void main(){
   foo();
   foo();
}

Ausgabe sollte 

1
2

sein
 

thE_29

Top Contributor
Jo, sowas ist mir klar!!

Für sowas ist static da!! (Immerhin hab ich 2 1/2 jahre nur C gelernt, und son static ist zeitweis schon praktisch :))


Aber, das static dafür da ist, das eine Variable oder Methode für eine andere Datei nicht sichtbar ist, is mir neu...

Ich guck mal ob ich da wo Ansi C einstellen kann!
 

thE_29

Top Contributor
Wo habe ich was gefragt??


Ich habe nur gesagt, das mir diese komische Feature nicht bekannt ist und bei mir sowieso net geht!!

(dass das static eine Variable/Methode für eine andere Datei unsichtbar macht)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Warum dürfen Objekte einer Klasse auf statische Variablen dieser Klasse referenzieren? Java Basics - Anfänger-Themen 10
D Statische Variablen/Methoden Java Basics - Anfänger-Themen 3
S ActionListener und Statische Variablen Java Basics - Anfänger-Themen 4
K Wieso muss man finale statische Variablen sofort oder eben im Konstruktor initialisieren? Java Basics - Anfänger-Themen 2
Q Variablen Statische Variablen Java Basics - Anfänger-Themen 8
K Statische Variablen von Objekten im Array Java Basics - Anfänger-Themen 15
C args[] als statische Variablen speicher oder wie? Java Basics - Anfänger-Themen 12
K statische variablen und methode Java Basics - Anfänger-Themen 3
H statische, dynamischer Typ von Variablen Java Basics - Anfänger-Themen 1
J Die statische Main-Methode ändert Instanzvariable? Java Basics - Anfänger-Themen 10
B Attribute eines Objekts einer Klasse durch statische Methode einer 2. Klasse ändern? Java Basics - Anfänger-Themen 32
C Größte Zahl aus einem Array ermitteln(als statische Methode) Java Basics - Anfänger-Themen 31
V Variablen statische Variable einer Objektvariable zuordnen Java Basics - Anfänger-Themen 3
S Klassen statische Objekterzeugung vor Konstruktoraufruf??? Java Basics - Anfänger-Themen 6
Queiser Nicht statische Klassen Java Basics - Anfänger-Themen 6
B Statische Methode return funktioniert nicht. Java Basics - Anfänger-Themen 19
C nicht statische Methoden Java Basics - Anfänger-Themen 4
D statische generische Methoden Java Basics - Anfänger-Themen 3
S Zufallszahl (Statische Attribute und Methoden) Java Basics - Anfänger-Themen 10
N Auf statische Methode zugreufen Java Basics - Anfänger-Themen 9
R Methoden Nicht statische Methode aus Main aufrufen Java Basics - Anfänger-Themen 2
F Privater Konstruktor und statische Methoden Java Basics - Anfänger-Themen 4
D Statische Objekte mit variablem Parameter Java Basics - Anfänger-Themen 1
F Statische Klasse => Flaschenhals? Java Basics - Anfänger-Themen 10
T Statische Arrays von Objekten Java Basics - Anfänger-Themen 2
S Java Fragen Konstruktor & Statische Methoden Java Basics - Anfänger-Themen 4
B Java Programm ohne statische Main Methode aufrufen Java Basics - Anfänger-Themen 5
S Datentypen nicht lineare STATISCHE Datenstruktur? Java Basics - Anfänger-Themen 10
E statische Variable ändert sich Java Basics - Anfänger-Themen 7
A Statische Variable in Methoden Java Basics - Anfänger-Themen 7
P Klassen statische oder dynamische(?) Klasse Java Basics - Anfänger-Themen 3
A Nicht-statische Methode in einer statischen aufrufen Java Basics - Anfänger-Themen 10
M Wann statische Methoden/Attribute? Java Basics - Anfänger-Themen 2
M Statische Methoden in Interface/Abstrakte Klasse Java Basics - Anfänger-Themen 6
J statische Methoden auf eine LinkedList initialisieren? Java Basics - Anfänger-Themen 5
A statische Arraylist Java Basics - Anfänger-Themen 6
J Unterschied zwischen statische und nicht statische Methoden? Java Basics - Anfänger-Themen 14
V OOP Statische Klassen-Attribute vererben Java Basics - Anfänger-Themen 4
K Statische Bindung Java Basics - Anfänger-Themen 6
B dynamische/statische Typen Java Basics - Anfänger-Themen 2
L Methoden Auf statische Methode einer anderen Klasse zugreifen, die Array zurückgibt Java Basics - Anfänger-Themen 3
S statische Methode nebenläufig Java Basics - Anfänger-Themen 2
R Aufruf statische Methode Java Basics - Anfänger-Themen 7
M Statische Methoden Java Basics - Anfänger-Themen 22
C Relativer Pfad - Statische Methode Java Basics - Anfänger-Themen 6
A Statische Methode "vererben" - Zwang durch annotation processor Java Basics - Anfänger-Themen 10
sqsh statische jlabels dynamisch verwalten Java Basics - Anfänger-Themen 2
S Statische Klassen/ Singleton Java Basics - Anfänger-Themen 13
E Statische Member können nicht vererbt werden? Java Basics - Anfänger-Themen 10
F Generische Typen auch für statische Methoden? Java Basics - Anfänger-Themen 13
B statische Variable Java Basics - Anfänger-Themen 10
M Statische und nicht-statische Funktionen: Desktop.browse(uri); Java Basics - Anfänger-Themen 4
A Stilfrage: statische Methoden und Attribute auf jeden Fall verhindern? Java Basics - Anfänger-Themen 5
A Stilfrage: statische Variable mit Instanz der gleichen Klasse Java Basics - Anfänger-Themen 8
H Statische generische Methode Java Basics - Anfänger-Themen 2
A statische Attribute: Vererbung und Zugriff darauf Java Basics - Anfänger-Themen 15
hdi Observer als statische Klasse ? Java Basics - Anfänger-Themen 2
hdi statische synchronisation Java Basics - Anfänger-Themen 6
G statische ArrayList? Java Basics - Anfänger-Themen 8
K nicht-statische Methode aufrufen Java Basics - Anfänger-Themen 3
S statische variable initialisieren mit exception Java Basics - Anfänger-Themen 2
G statische Variable zugreifen bzw. setzen Java Basics - Anfänger-Themen 6
T in statischem Kontext auf nicht statische Variable beziehen Java Basics - Anfänger-Themen 5
M Statische Funktion Java Basics - Anfänger-Themen 2
M öffentliche nicht-statische Funktion fremder Klasse ausführn Java Basics - Anfänger-Themen 16
P nicht statische methode instantiieren Java Basics - Anfänger-Themen 7
H statische methoden und sichtbarkeit Java Basics - Anfänger-Themen 13
nadoria statische Methoden (Klassenmethoden) Java Basics - Anfänger-Themen 3
H Was ist nocheinmal eine statische Klasse? Java Basics - Anfänger-Themen 6
G Statische Methoden? Java Basics - Anfänger-Themen 2
kb statische methoden und throws exception Java Basics - Anfänger-Themen 2
M Konstruktor eine statische Methode? Java Basics - Anfänger-Themen 9
H statische,dynamische Bindung Java Basics - Anfänger-Themen 4
N Unterschied statische Attribute u. Methoden <-> objekt Java Basics - Anfänger-Themen 4
O nicht-statische Inhalte auf statische Inhalte verweisen Java Basics - Anfänger-Themen 19
M wann statische klassen? Java Basics - Anfänger-Themen 14
F Statische Methode - Nicht Statische Methode Java Basics - Anfänger-Themen 10
S Statische Felder - statische Methoden Java Basics - Anfänger-Themen 2
D Statische und Nicht-Statische Methoden Java Basics - Anfänger-Themen 7
K Statische Methoden!? Java Basics - Anfänger-Themen 8
O Welcher Object-Lock-Pool bei static Variablen? Java Basics - Anfänger-Themen 3
T variablen klassen übergreifend Java Basics - Anfänger-Themen 12
T Variablen Java Basics - Anfänger-Themen 1
N Verständnis Frage zu Variablen Java Basics - Anfänger-Themen 3
M Aufsummieren von variablen Wertegrößen Java Basics - Anfänger-Themen 17
M Mehrere Daten/ Variablen Speichern Java Basics - Anfänger-Themen 9
J Speichern von zwei Variablen durch Auslesen aus einem Numberfield Java Basics - Anfänger-Themen 2
ashi Variablen aufrufen Java Basics - Anfänger-Themen 17
U Warum kann ich, auf private Variablen zugreifen, wenn ich ein Objekt in der Klasse, die private Variablen hat erstelle und dort drauf zugreifen will? Java Basics - Anfänger-Themen 7
B Konkatenieren eines Strings und inkremtierenden Zahl zu einer INT Variablen Java Basics - Anfänger-Themen 7
A 2 Strings vergleichen in einer methode wenn man mit Globalen variablen arbeitet Java Basics - Anfänger-Themen 12
C Konstruktoren und Variablen Java Basics - Anfänger-Themen 42
F Auf Variablen eines Konstruktors zugreifen Java Basics - Anfänger-Themen 4
N Variable aus anderen Variablen in statischer Klasse berechnen/abspeichern? Java Basics - Anfänger-Themen 4
M Wie kann ich bei int-Variablen im exception handler auf bestimmte Strings reagieren? Java Basics - Anfänger-Themen 5
B Variablen Variablen übertragen ohne Klassen Java Basics - Anfänger-Themen 5
B Methoden Methoden haben kein Zugriff auf variablen Java Basics - Anfänger-Themen 4
T Java Swing - Dreieck zeichnen mit verschiedenen Variablen Java Basics - Anfänger-Themen 8
Arif Vererbung Methodenvererbung mit finalen Variablen Java Basics - Anfänger-Themen 1
M Wie kann ich ein Objekt erstellen, wenn sich der Klassenname in einer Variablen befindet? Java Basics - Anfänger-Themen 10

Ähnliche Java Themen

Neue Themen


Oben