الموضوع.java
معلومات المنتج:
الحزمة _20140416_;
import java.util.List;
موضوع الواجهة العامة {
سلسلة عامة say(String name,int age);
public List<Person> getAllList(String name);
}
RealSubject.java
معلومات المنتج:
الحزمة _20140416_;
import java.util.ArrayList;
import java.util.List;
فئة عامة RealSubject تنفذ الموضوع {
اسم سلسلة خاصة؛
RealSubject العام (اسم السلسلة) {
this.name = name;
}
سلسلة عامة getName () {
اسم الإرجاع؛
}
اسم مجموعة الفراغ العام (اسم السلسلة) {
this.name = name;
}
@تجاوز
سلسلة عامة تقول (اسم السلسلة، العمر int) {
إرجاع "名字:" + الاسم + "_年龄:" + العمر؛
}
@تجاوز
القائمة العامة<Person> getAllList(String name) {
List<Person> list = new ArrayList<Person>();
list.add(new Person("A", 20));
list.add(new Person("B", 20));
list.add(new Person("C", 20));
list.add(new Person("D", 20));
System.out.println(name);
قائمة العودة؛
}
@تجاوز
public int hashCode() {
إرجاع 10010؛
}
@تجاوز
منطقية عامة يساوي (كائن كائن) {
إذا (كائن كائن RealSubject) {
RealSubject real = (RealSubject)obj;
System.out.println("getName():"+real.getName());
System.out.println("this.name:"+this.name);
إذا (real.getName()==this.name){
System.out.println("相同");
}آخر{
System.out.println("النسخة الأصلية");
}
}
عودة صحيحة؛
}
}
MyInvercationHander.java
معلومات المنتج:
الحزمة _20140416_;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
الطبقة العامة MyInvercationHander تنفذ InvocationHandler {
كائن خاص obj؛
ربط الكائن العام (كائن الكائن) {
this.obj=obj;
return Proxy.newProxyInstance(obj.getClass().getClassLoader(),obj.getClass().getInterfaces(),this);
}
@تجاوز
استدعاء الكائن العام (وكيل الكائن، طريقة الطريقة، وسيطة الكائن [])
رميات قابلة للرمي {
Object temp = way.invoc(this.obj, args);
//الحصول على أفضل النتائج في المستقبل
System.out.println("الإجابة على هذا السؤال!");
درجة حرارة العودة؛
}
}
شخص.جافا
معلومات المنتج:
الحزمة _20140416_;
شخص من الدرجة العامة {
اسم سلسلة خاصة؛
عمر خاص؛
سلسلة عامة getName () {
اسم الإرجاع؛
}
اسم مجموعة الفراغ العام (اسم السلسلة) {
this.name = name;
}
كثافة العمليات العامة getAge() {
سن العودة؛
}
مجموعة الفراغ العام (int age) {
this.age = age;
}
شخص عام (اسم السلسلة، العمر int) {
ممتاز()؛
this.name = name;
this.age = age;
}
}
MainTest.java
معلومات المنتج:
الحزمة _20140416_;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
اختبار الطبقة العامة {
public static void main(String[] args) {
الموضوع الموضوع = (الموضوع) new MyInvercationHander().bind(new RealSubject("中国"));
System.out.println(subject.say("莫建锋",22));
System.out.println(subject.getAllList("张三"));
Map<String,Integer> myMap = new HashMap<String, Integer>();
myMap.put("A",1);
myMap.put("B",2);
myMap.put("C",3);
myMap.put("D",4);
myMap.put("E",5);
Set<Map.Entry<String,Integer>> myEntrySet = myMap.entrySet();
Iterator<Map.Entry<String,Integer>> it = myEntrySet.iterator();
بينما(it.hasNext()){
Map.Entry<String,Integer> input = it.next();
System.out.print(entry.getKey()+":);
System.out.println(entry.getValue());
}
System.out.println(new RealSubject("中国").hashCode());
System.out.println(new RealSubject("中国").equals(new RealSubject("中dd国")));
معلومات السلسلة = سلسلة جديدة("1");
String info1 = new String("1");
System.out.println(new Integer('1'));
System.out.println(info.hashCode());
System.out.println(info1.hashCode());
System.out.println(info==info1);
System.out.println(info.equals(info1));
قصيرة ط = 1؛
System.out.println(i);
}
}