java-forum.org - Java programmieren aus Leidenschaft
Java 6 Einstieg und professioneller Einsatz
Alter Preis: 34,90 EUR
Jetzt: 0,00 EUR

zzgl. Versandkosten

Zurück   java-forum.org - Java programmieren aus Leidenschaft > Java - Programmierung > Allgemeine Java-Themen

Allgemeine Java-Themen Allgemeine Themen, die nicht in andere Fachforen und nicht zu den Java Basics passen

Thema geschlossen    
Themen-Optionen Thema durchsuchen Ansicht
Alt 24.05.2004, 18:25   #1 (permalink)
Stammbenutzer
Kilobyte
 
Registriert seit: 14.11.2003
Fachbeiträge: 139
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
Standard Auf statische Funktionen mit Java Reflections zugreifen

Ist es bzw. wie ist es möglich, mit Java Reflections auf statische Methoden zuzugreifen?
schoppenhauer_entfernt_ ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Alt 24.05.2004, 21:15   #2 (permalink)
Benutzer
int
 
Registriert seit: 25.11.2003
Fachbeiträge: 37
Abgegebene Danke: 0
Erhielt 1 Danke für 1 Beitrag
Hallo,

du kannst mit java.lang.Class#getMethod auch statische Methoden abfragen.
Beim Aufruf von Method#invoke übergibst du "null" als Objekt.
Code:
public class StaticReflection {
    public static void main(String[] args) {
	try {
	    Class clazz = Class.forName("java.lang.String");
	    Class[] paramClasses = {int.class};
	    java.lang.reflect.Method meth = clazz.getMethod("valueOf", paramClasses);
	    int i = 77;
	    Object[] params = {new Integer(i)};
	    String s = "";
	    s = (String)meth.invoke(null, params);
	    System.out.println(s);
	} catch(Exception e) {
	    e.printStackTrace();
	}
    }
}
utnovetur ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Alt 26.05.2004, 16:55   #3 (permalink)
Stammbenutzer
Kilobyte
Themenstarter
 
Registriert seit: 14.11.2003
Fachbeiträge: 139
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
O.K., das leuchtet mir ein. Danke.
Aber jetzt mal noch ne Frage... Wie kann ich überhaupt feststellen, ob ein Method-Objekt eine statische Funktion repräsentiert, oder nicht? Gibt es da sowas wie isStatic(), oder so?
schoppenhauer_entfernt_ ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Alt 07.07.2004, 10:06   #4 (permalink)
Stammbenutzer
Floppy Disc
 
Benutzerbild von bummerland
 
Registriert seit: 17.06.2003
Fachbeiträge: 958
Abgegebene Danke: 0
Erhielt 12 Danke für 3 Beiträge
Zitat: Schoppenhauer
O.K., das leuchtet mir ein. Danke.
Aber jetzt mal noch ne Frage... Wie kann ich überhaupt feststellen, ob ein Method-Objekt eine statische Funktion repräsentiert, oder nicht? Gibt es da sowas wie isStatic(), oder so?
Code:
java.lang.reflect.Modifier.isStatic(method.getModifiers())
bummerland ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Thema geschlossen    

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
statische Variable zugreifen bzw. setzen Java Basics - Anfänger-Themen 6 20.03.2008 10:27
Wann statische Methoden, statische Attributen? Allgemeine Java-Themen 7 12.02.2007 21:50
Rekursive Funktionen in imperative Funktionen umwandeln Stephan22 Java Basics - Anfänger-Themen 2 06.12.2004 14:34
Statische Felder - statische Methoden Sindbad1983 Java Basics - Anfänger-Themen 2 18.11.2004 17:56
Statische und Nicht-Statische Methoden Dreezard Java Basics - Anfänger-Themen 7 21.10.2004 07:21


Lesezeichen

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:08 Uhr.


Powered by vBulletin® Version 3.8.6 (Deutsch)
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.2
Thanks for Smilies by smilies.4-user.de