2012-04-09 11 views
0

Ich habe zwei Klassen.Erstellen von dynamischen Referenzen in Java

package utilities; 

public class PostCaller { 

    public String getUrl() { 
     return url; 
    } 
    public void setUrl(String url) { 
     this.url = url; 
    } 
    public String getRequest() { 
     return request; 
    } 
    public void setRequest(String request) { 
     this.request = request; 
    } 

    String request = null; 
    String url  = null; 

} 

public class TestLoader { 

    public static void main(String[] args) throws Exception { 
     Object obj = Class.forName("utilities.PostCaller").newInstance(); 
     System.out.println(obj.getClass().getName()); // This prints utilities.PostCaller 
    } 
} 

Ich möchte ein neues Instatnce des PostCaller erstellen und es ist Methode aus der TestLoader Klasse aufrufen. Hier habe ich eine Frage zum Erstellen einer Referenz der Utilities.PostCaller-Klasse. Das heißt, ich möchte eine Referenzvariable erstellen, deren Name dyanamisch durch einen String angegeben wird (zB: utilities.PostCaller). Hier, obwohl ich eine neue Instanz der Dienstprogramme.PostCaller erstellt habe, kann ich es nicht Methoden nennen, da ich keine Referenz davon erstellt habe.

+1

Was ist die Frage? Was erwarten Sie von diesem Code? Wie unterscheidet sich das von dem, was es tut? – unholysampler

+1

Wenn Sie versuchen, mehr über Reflexionen API zu fragen, dann ist hier die [Link] (http://docs.oracle.com/javase/tutorial/reflect/index.html) – AurA

+0

Ich erwähnte es in der Frage. Es kann nicht gelöscht werden. Ich habe es jetzt überarbeitet. Ich möchte eine Referenzvariable erstellen, deren Name dynamisch durch den Namen angegeben wird. (zB: utilities.PostCaller) – namalfernandolk

Antwort

0

Wie ich verstanden habe, möchten Sie nur Ihren PostCaller testen ... I Wenn wahr, EasyMock Bibliothek kann helfen, in diesem Fall. Sie können über Google viele Beispiele suchen, hier ist eine http://tersesystems.com/2007/06/25/easymock-examples.

+0

Dieser Postanrufer ist nur eine Beispielklasse. Eigentlich möchte ich Zeitpunkte erzeugen und ihre Methoden dynamisch aufrufen. Ich habe nach einer Möglichkeit gefragt, dynamische Referenzen zu erstellen. – namalfernandolk

Verwandte Themen