Chyba refleksja

0

Cześć,
Błagam (bo innego słowa już nie mogę użyć bo męczę się z tym pół dnia) o pomoc.

Potrzebuję użyć metody getDeclaredMethods()

Class klasa = [nazwaKlasy].class;
Method[] me = klasa.getDeclaredMethods();

Problem mój jest w tym, że [nazwaKlasy] pochodzi ze Stringa.
Jak temu zaradzić? Tzn jak z zawartości Stringa zrobić obiekt typu [zawartośćStringa]

Pozdrawiam
Adam

2

Class.forName("com.dupa.Klasa")

0

Po wstawieniu forName (argumentem poi jest "File":

public String info(String poi) throws ClassNotFoundException, InstantiationException, IllegalAccessException {

				
//		
		Class klasa;
		klasa = Class.forName(poi);

		
		Constructor<?>[] ko = klasa.getDeclaredConstructors();
		Method[] me = klasa.getDeclaredMethods();
		Field[] po = klasa.getDeclaredFields();
		Field[] po2 = (klasa.getSuperclass()).getDeclaredFields();
		Class[] po3 = (klasa.getInterfaces());
		Class po4 = (klasa.getSuperclass());

dostaję komunikat o błędzie:

j

ava.lang.ClassNotFoundException: File
	at java.net.URLClassLoader$1.run(Unknown Source)
	at java.net.URLClassLoader$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Unknown Source)
	at Reflection.info(Reflection.java:72)
	at Reflection$ButtonListener.actionPerformed(Reflection.java:32)
	at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
	at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
	at java.awt.Component.processMouseEvent(Unknown Source)
	at javax.swing.JComponent.processMouseEvent(Unknown Source)
	at java.awt.Component.processEvent(Unknown Source)
	at java.awt.Container.processEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$200(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)

2

Nie ma klasy o nazwie "File", jest klasa "java.io.File".

0
bogdans napisał(a):

Nie ma klasy o nazwie "File", jest klasa "java.io.File".

I tutaj rozwiązałeś mój kłopot, dzięki!

0

Prawede mowiac problem rozwiazalem ja, Bogdans poprawil tylko kolejny blad. A nawet plusika nie dostalem buaaaaaaaa!!!

1 użytkowników online, w tym zalogowanych: 0, gości: 1