2016-05-03 10 views
-3

Ich möchte dieseSchaffung Objekt mit einem angegebenen Namen

class DemoClass { 

    int money =1000; 

    void display() { 
     System.out.println("money=" + money); 
    } 

} 

public class createobject { 

    public static void main(String[] args) throws ClassNotFoundException, InstantiationException, IllegalAccessException { 
     String objectname = "Harry"; 
     DemoClass objectname=new DemoClass();//creating object with a supplied name 
     System.out.println(Harry.money);//will print 1000 
     Harry.display();// will print the same 

    } 
} 

tun es Fehler gibt. Gibt es einen anderen Weg, den Zweck zu lösen?

+2

'es gibt Fehler.' - Welchen Fehler bekommen Sie? Und was willst du eigentlich erreichen? Das Referenzieren eines Objekts über einen dynamisch erstellten Variablennamen funktioniert in Java nicht. Verwenden Sie stattdessen eine 'Map'. –

+1

Trotz der Tatsache, dass dies nicht funktionieren wird, was sollten Ihrer Meinung nach die Vorteile einer Variablen mit dynamischem Namen sein? – SomeJavaGuy

+0

Mögliches Duplikat von [Java-Variablenwert als neuer Variablenname] (http://stackoverflow.com/questions/9152439/java-variable-value-as-new-variable-name) –

Antwort

1

Sie müssen eindeutige Variablennamen haben.

Ihr String Variablenname und DemoClass Variablenname sind beide gleich - Objektname.

Ändern Sie eine von ihnen.

Auch dynamische Variablenname würde nicht in Java funktionieren.

+0

können Sie sagen Es gibt keine "Variablenvariablen" (dh Variablen mit Variablennamen) in Java. – Kaushal28

0

1.Java Basics: Sie können keine doppelten Variablen in einer Methode haben. Hier ist "Objektname" doppelte Variable. 2.Harry ist kein Objekt, Sie können also auf keine Methode oder Variable zugreifen. Sie erhalten einen Kompilierungsfehler.

+0

Wenn ich so was tun will? Ich habe auch versucht Karte aber nicht funktioniert .. String Objektname = "Harry"; Name der DemoClass; Karte map = neue HashMap <>(); map.put (Objektname, neue DemoClass()); Harry.display(); –

Verwandte Themen