第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定

模式的秘密---代理模式

難度中級
時(shí)長 2小時(shí) 0分
學(xué)習(xí)人數(shù)
綜合評分9.70
184人評價(jià) 查看評價(jià)
9.8 內(nèi)容實(shí)用
9.6 簡潔易懂
9.7 邏輯清晰
public Object invoke(Object proxy, Method method, Object[] args)


proxy確實(shí)表示最終生成的代理類對象

已采納回答 / 小丶冬瓜
在使用中指定哪個(gè)就調(diào)用哪個(gè),比如說例子中測試類調(diào)用了Train.move()方法,那么就是move()方法,如果Train類中還存在其他方法比如put()方法,那么則通過Train.put()調(diào)用。而proxy.invokeSuper(obj, args);中的args是指定在調(diào)用方法時(shí)可否帶參數(shù)。如果proxy.invokeSuper(obj);的話。在調(diào)用方法時(shí)是不可以帶參數(shù)的。
視頻確實(shí)講的不錯(cuò),但是我想說,確實(shí),意義不是很大,了解前面的動態(tài)代理內(nèi)容就可以了
不懂是你還沒達(dá)到這個(gè)層次,達(dá)到那個(gè)高度你回來再看一遍就懂原理了…………
//Enhancer允許為非接口類型創(chuàng)建一個(gè)Java代理。
//Enhancer動態(tài)創(chuàng)建了給定類型的子類但是攔截了所有的方法。
//和Proxy不一樣的是,不管是接口還是類他都能正常工作。
新建一個(gè)LogHandler實(shí)現(xiàn)InvocationHandler接口,和TimeHandler類似
在測試類下面繼續(xù)添加如下代碼:
InvocationHandler logHandler = new LogHandler(m);
Moveable m2= (Moveable) Proxy.newProxyInstance(cls.getClassLoader(),
cls.getInterfaces(), logHandler);
m2.move();
輸出:
開始記錄日志...
汽車開始行駛....
move
汽車行駛中...
汽車結(jié)束行駛..
那位說別人是碼農(nóng)的兄弟不知道現(xiàn)在是啥水平啊?高級工程師?架構(gòu)師?易大師:真正的大師,永遠(yuǎn)懷著一顆學(xué)徒的心。
置頂那個(gè)是錯(cuò)誤的,在main()中
Car car = new Car();
InvocationHandler h = new TimeHandler(car);
Class<?> cla = car.getClass();
h.invoke(car, cla.getDeclaredMethod("move"),null);

運(yùn)行成功,說明public Object invoke(Object proxy, Method method, Object[] args)
中的proxy,是被代理對象
看到前面有很多不吐不快的人,到后面全都消失了。
如果是有參數(shù)的
public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
//簡寫
method.invoke(target, new Object[]{3000});
//簡寫
}
這邊寫完參數(shù)
測試那邊 還要再調(diào)用一下 move方法,再填參數(shù)都是以3000為準(zhǔn)。
這個(gè)地方有點(diǎn)不解,
這PPT怎么這么秀!
public Object invoke(Object obj, Method method, Object[] args)
throws Throwable {
System.out.println("開始行駛");
method.invoke(targer,null);//沒有參數(shù)就傳入null
System.out.println("結(jié)束行駛");
return null;
}
老師說的好好

我是勤勞的搬運(yùn)工,源碼 源碼。。

https://github.com/imooc-java/proxy
課程須知
本課程是 Java 開發(fā)課程的高級課程,希望各位小伙伴們在學(xué)習(xí)本課程之前,了解以下內(nèi)容: 1)初步具備面向?qū)ο蟮脑O(shè)計(jì)思維 2)了解多態(tài)概念 3)了解反射
老師告訴你能學(xué)到什么?
1、代理模式概念機(jī)分類 2、代理模式應(yīng)用場景 3、掌握靜態(tài)代理、動態(tài)代理運(yùn)用 4、理解JDK動態(tài)代理實(shí)現(xiàn)原理

微信掃碼,參與3人拼團(tuán)

微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復(fù)購買,感謝您對慕課網(wǎng)的支持!

本次提問將花費(fèi)2個(gè)積分

你的積分不足,無法發(fā)表

為什么扣積分?

本次提問將花費(fèi)2個(gè)積分

繼續(xù)發(fā)表請點(diǎn)擊 "確定"

為什么扣積分?

舉報(bào)

0/150
提交
取消