Static Variable "dynamisch" aufrufen?

Maikata

Mitglied
Hallo,
ich habe eine Klasse die sehr viele static String variablen zur verfügung stellt.
Jetzt möchte ich die passende dynamisch auswählen. Das heißt ich habe einen String der als Inhalt den Variablennamen hat auf die ich gerne zugreifen möchte.

Also angenommen in besagter Klasse gibt es die Variable blub:
class1.blub

Und jetzt hab ich einen String s:
String s = "blub";

Gibt es eine möglichkeit dass ich jetzt auf blub zugreife über den string s? Also im prinzip sowas: class1.*(s)

Hoffe ihr versteht was ich mein.

Die vorhandene KLasse mit den strings kann ich nicht ändern.

danke schonmal!
 

Antoras

Top Contributor
Auf direktem Weg geht das nicht, also nein.

Es besteht die Möglichkeit über Reflection sich die Variablennamen selbst zusammenzubauen und darauf zuzugreifen, aber das ist meist ein Designfehler.

Ich würde dir Raten eine Map<String, Konstante> zu benutzten, dann kannst du eine Konstante in Abhängigkeit zu einem String auflösen.
 

njans

Top Contributor
also ich bin mir nicht sicher, was genau du meinst.
Was ich und Aradauer verstehen:

Du willst mit Hilfe eines Strings auf einen anderen String (deinen static String in deiner Klasse) zugreifen. Also praktisch gesprochen suchst du eine Methode, der du einen String übergibst und die dann den dazugehörigen static String zurück liefert.
Ist das korrekt?
Wenn ja, dann ist vielleicht eine Map (z.B. HashMap) genau das, was du suchst :)

Edit Was meinst du mit "verändern"?
 

Maikata

Mitglied
Ja genau, das ist korrekt. Allerdings soll ich die Klasse mit den Strings nicht verändern, und das müsst eich ja tun um die methode zu implementieren. Wenn es wirklich keine andere möglichkeit gibt, werde ich vielleicht nochmal anfragen ob ich die Klasse verändern kann.

EDIT: Mit verändern meine ich ob ich der Klasse noch was hinzufügen kann. Die Klasse wurde mir so gegeben mit der Bitte sie nicht zu verändern.
 

Michael...

Top Contributor
Die Map muss ja nicht in dieser Klasse implementiert werden. Man kann ja auch eine Util Klasse definieren, die sich per Reflection diese Map erzeugt und entsprechende Methoden zur Verfügung stellt.
 

njans

Top Contributor
Aber in jedem Fall, müsstest du ja eine Abbildung machen, und sei es, dass du das nur über eine Methode machst, die mit IF den String abfragt. Außerdem müsstest du doch sowieso etwas schreiben, denn du willst ja diese Abbildung von String -> Static String machen. Also Code müsste da doch in jedem Fall geschrieben werden, oder verstehe ich da deine Aufgabe falsch?
 

Maikata

Mitglied
Ja code muss auf jeden fall geschrieben werden. Nur sollte es eben nicht in diese Klasse geschrieben werden.
In eine Utility Klasse ist vollkommen in Ordnung. Reflection kenn ich jetzt noch nicht, werde mich da mal informieren. Oder wenn jemanden einen guten Link kennt, darf er ihn gerne hier posten:)
Danke euch
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Fehlermeldung unklar. non-static variable player0 cannot be referenced from a static context Java Basics - Anfänger-Themen 4
P non-static variable cannot be referenced from a static context Java Basics - Anfänger-Themen 6
Aprendiendo Interpreter-Fehler "non-static variable this cannot be referenced from a static context" Java Basics - Anfänger-Themen 2
T static String Variable wird nur beim ersten aufruf durch eine Funktion geändert. Java Basics - Anfänger-Themen 16
H Variablen error: non-static variable cannot be referenced from a static context Java Basics - Anfänger-Themen 4
J Variablen non-static variable Java Basics - Anfänger-Themen 2
K Objekt erstellen - error: non-static variable this cannot be referenced from a static context Java Basics - Anfänger-Themen 17
N non-static variable con cannot be referenced from a static context Java Basics - Anfänger-Themen 7
R Stoppuhr: Zeit ermitteln und übergeben - Variable static?? Java Basics - Anfänger-Themen 6
P non-static variable. Java Basics - Anfänger-Themen 2
G non-static variable Java Basics - Anfänger-Themen 5
S static/non-static variable - mal wieder Java Basics - Anfänger-Themen 5
M static Variable in Funktion? Java Basics - Anfänger-Themen 2
O Welcher Object-Lock-Pool bei static Variablen? Java Basics - Anfänger-Themen 3
A Instance methods should not write to "static" fields Java Basics - Anfänger-Themen 4
berserkerdq2 Habe eine Klasse, welche public ist, diese hat eine public Methode, die nicht static ist. Wenn ich nun versuche aufzurufen Probleme? Java Basics - Anfänger-Themen 8
viktor1 Methoden Methode schreiben static void readText (String filename) {...} zu WordHistogramSample.java Java Basics - Anfänger-Themen 13
M static ArrayList in non-static Java Basics - Anfänger-Themen 12
B Static vs non static und Probleme daraus Java Basics - Anfänger-Themen 13
S Methoden 2 non-static Methoden, trotzdem Fehler "non static method can not be referenced from a static context" Java Basics - Anfänger-Themen 9
R UML-Bild (Erkennung ob static o. nicht) Java Basics - Anfänger-Themen 18
R Schulaufgabe, Bruache Hilfe mit non-static Methoden Java Basics - Anfänger-Themen 2
B Static Attribute in einer Klasse, wie geht das? :O Java Basics - Anfänger-Themen 19
NaZuRe Geld(Wert) von der public static void main in die public static void Blackjack Java Basics - Anfänger-Themen 2
H Static Java Basics - Anfänger-Themen 5
K Ausgaben auf der Konsole (static Varible) Java Basics - Anfänger-Themen 9
S public static boolean Java Basics - Anfänger-Themen 4
Vamecruft Compiler-Fehler public static void zu static String ändern Java Basics - Anfänger-Themen 2
L non-static Fehler Java Basics - Anfänger-Themen 16
S Klassenmethode ohne static Java Basics - Anfänger-Themen 2
M (Sehr großes Problem) Listen als static in anderen Klassen verwendet Java Basics - Anfänger-Themen 12
D Methoden Scannervariablen in static Methoden Java Basics - Anfänger-Themen 5
V the static method should be accessed is a static way Java Basics - Anfänger-Themen 6
NormanPatrickBenner static non-static Java Basics - Anfänger-Themen 82
N Erste Schritte "non-static method" oder "XYZ can not be resolved" Java Basics - Anfänger-Themen 21
B Email versenden, muss Methode static sein? Java Basics - Anfänger-Themen 7
R static in der Methode Java Basics - Anfänger-Themen 2
E Problem mit static Methode Java Basics - Anfänger-Themen 4
H Vererbung Static Scanner Objekt verwenden - von StdIn in einer importierten Klasse lesen Java Basics - Anfänger-Themen 10
M Cannot make a static reference to the non-static method Java Basics - Anfänger-Themen 10
I Abstrakte Klasse - static Attribute deklarieren Java Basics - Anfänger-Themen 14
C Methoden Unterschied zwichen public int, public static int und public static void Java Basics - Anfänger-Themen 2
J Frage zu: public static void main (String[]args) Java Basics - Anfänger-Themen 1
T Datentypen enum static Chaos (blutiger anfänger) Java Basics - Anfänger-Themen 5
D Das leidige Thema static.... Java Basics - Anfänger-Themen 15
T Problem mit static Java Basics - Anfänger-Themen 6
S Vererbung Zugriff auf Methode funktioniert nicht (static/non-static) Java Basics - Anfänger-Themen 3
snipesss Was kann 'static'? Java Basics - Anfänger-Themen 4
M public static int in ActionListener Java Basics - Anfänger-Themen 6
J static verschachtelte Klassen und innere Klassen Java Basics - Anfänger-Themen 1
H Nicht Static Funktion ohne Objekt aufrufen? Java Basics - Anfänger-Themen 6
E Objekte und static Java Basics - Anfänger-Themen 2
K Methoden Methoden in Methoden -> static oder nicht? Java Basics - Anfänger-Themen 7
D Erklärung static boolean Java Basics - Anfänger-Themen 6
L Was genau macht "public static void" ? Java Basics - Anfänger-Themen 12
U Erste Schritte cannot be referenced from a static context Java Basics - Anfänger-Themen 1
B ja ja schon wieder einer mit einer public static void main(string[] args) Frage... Java Basics - Anfänger-Themen 8
J Java: static bei Vererbung Java Basics - Anfänger-Themen 5
O Zu viel static im Projekt Java Basics - Anfänger-Themen 9
F Static final Klasse Java Basics - Anfänger-Themen 0
N static und Objekt kombiniert?!? Java Basics - Anfänger-Themen 3
O Wann nutzt man static? Java Basics - Anfänger-Themen 19
B Klassen Eigene "non static" Klasse in Main verwenden! Java Basics - Anfänger-Themen 12
D neue public static class variablen in array speichern? Java Basics - Anfänger-Themen 6
A Static variablen --- Anwendungsbereich Java Basics - Anfänger-Themen 11
B Erste Schritte Wie komme ich aus Static raus?!! Java Basics - Anfänger-Themen 4
V Static Methods Java Basics - Anfänger-Themen 5
W Compiler-Fehler "non-static method cannot be referenced"-Problem Java Basics - Anfänger-Themen 6
S OOP Klasse mit static-Eigenschaften - HashMap füllen Java Basics - Anfänger-Themen 6
3 OOP static class in einer Klasse Java Basics - Anfänger-Themen 6
B static individuell "vererben"? Java Basics - Anfänger-Themen 8
B Erkennen, wann static oder nicht? Java Basics - Anfänger-Themen 7
T Static Fehler Java Basics - Anfänger-Themen 1
R public static void Rückgabe Java Basics - Anfänger-Themen 5
P Compiler-Fehler public static void main, Grundloses Problem Java Basics - Anfänger-Themen 4
A Cannot make a static reference to the non-static field Java Basics - Anfänger-Themen 6
W Variablen Automatisch static? Java Basics - Anfänger-Themen 3
O Warum muss ich static? Java Basics - Anfänger-Themen 6
O Static Java Basics - Anfänger-Themen 15
E non-static method und static context Java Basics - Anfänger-Themen 15
B non static interface Methode Java Basics - Anfänger-Themen 16
J KeyListener,MouseListener,MouseMotionListener und static Java Basics - Anfänger-Themen 7
S Static void Methode Java Basics - Anfänger-Themen 12
Q Unterschied zwischen static und keinem Modifier Java Basics - Anfänger-Themen 15
O Main-Methode static modifier umgehen Java Basics - Anfänger-Themen 10
P Erste Schritte public oder static oder wie? Java Basics - Anfänger-Themen 7
J static - Methoden Java Basics - Anfänger-Themen 22
X Erste Schritte Methode ohne Static Java Basics - Anfänger-Themen 4
B Classpath static block - Verwirrung Java Basics - Anfänger-Themen 2
S Methoden Warum ist sleep static? Java Basics - Anfänger-Themen 9
K static, non-static Krise Java Basics - Anfänger-Themen 4
R Schlüsselworte static Methoden und Imports Java Basics - Anfänger-Themen 10
M Methoden "Non-static method xy cannot be referenced from a static context" Java Basics - Anfänger-Themen 20
J Probleme mit static generische Klasse Java Basics - Anfänger-Themen 6
S Aufruf Einer Methode aus einer anderen Klasse - Static Fehler Java Basics - Anfänger-Themen 4
W Methodenaufruf innerhalb einer Klasse - static vs. this Java Basics - Anfänger-Themen 3
H non-static method cannot be referenced from a static context Java Basics - Anfänger-Themen 2
Y Gebrauch von static Java Basics - Anfänger-Themen 29
L Cannot make a static reference to the non-static method Java Basics - Anfänger-Themen 6
T getClass() im static Kontext Java Basics - Anfänger-Themen 12

Ähnliche Java Themen

Neue Themen


Oben