This post has been edited 1 times, last edit by "neweb" (Jul 9th 2006, 4:42pm)
Senior Schreiberling
Date of registration: Jul 5th 2003
Location: Malaga
Occupation: Senior Cloud Solution Engineer bei Oracle
Quoted
Original von Merryluzy
Hast Du einen anderen Vorschlag? Handbuch vom RRZN?
Quoted
Original von Merryluzy
Hallo
Es steht "Band 1-Grundlagen" auf dem Einband drauf.
Und: "Einführung in die objektorientierte Programmierung."
Hast Du einen anderen Vorschlag? Handbuch vom RRZN?
Gruß, Tugba.
Quoted
App.java
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Proxy;
public class App {
public static void main(String args[]) {
InvocationHandler handler = new TestProxie();
ClassLoader sysClassLoader = ClassLoader.getSystemClassLoader();
Class[] proxyInterfaces =
Proxy proxy = (Proxy)Proxy.newProxyInstance(sysClassLoader, proxyInterfaces,
handler);
((IPerson)proxy).setName("Bob");
System.out.println("Name: "+((IPerson)proxy).getName());
System.out.println("IPerson: "+(proxy instanceof IPerson));
System.out.println("IEmail: "+(proxy instanceof IEmail));
System.out.println("IFon: "+(proxy instanceof IFon));
System.out.println("IJabber: "+(proxy instanceof IJabber));
}
}
Quoted
TestProxy.java
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.util.HashMap;
import java.util.Map;
public class TestProxie implements InvocationHandler {
Map valueMap;
public TestProxie() {
valueMap=new HashMap();
}
public Object invoke(Object proxy, Method m, Object[] args)
throws Throwable {
String mName=m.getName();
if(mName.startsWith("set")) {
valueMap.put(mName.substring(mName.indexOf("set")+3), args[0]);
return args[0];
} else if (mName.startsWith("get")) {
return valueMap.get(mName.substring(mName.indexOf("get")+3));
}
return null;
}
}
Quoted
IPerson.java
public interface IPerson {
public String getName();
public void setName(String name);
}
Quoted
Original von Merryluzy
Hallo neweb!
Danke für Deine Mühe!
Gruß.