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

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

為什么在測(cè)試方法中接收類型必須要使用接口類型,而不能使用具體的實(shí)現(xiàn)類?

為什么在測(cè)試方法中接收類型必須要使用接口類型,而不能使用具體的實(shí)現(xiàn)類?在配置ProxyFactoryBean的時(shí)候不是指定了具體的target了么?

正在回答

7 回答

代理類代理的應(yīng)該是接口,而不是接口的具體實(shí)現(xiàn)類。接口指的是一類的事情,所以代理接口才有意義。比如中介代理的表面上是某個(gè)房東,其實(shí)是代理出租一類的事情。

0 回復(fù) 有任何疑惑可以回復(fù)我~

試了一下,是這樣的,如果?BizLogicImpl 實(shí)現(xiàn)了接口,就必須使用接口類型,否則可以不用

0 回復(fù) 有任何疑惑可以回復(fù)我~

貌似確實(shí)必須使用接口

0 回復(fù) 有任何疑惑可以回復(fù)我~


知道為什么了嗎?

0 回復(fù) 有任何疑惑可以回復(fù)我~

<bean id="bizLogicImplTarget" class="com.imooc.aop.api.BizLogicImpl"></bean>
???? <bean id="bizLogicImpl" class="org.springframework.aop.framework.ProxyFactoryBean">
??? <property name="proxyInterfaces">
?? ??? ?<value>com.imooc.aop.api.BizLogic</value>
??? </property>
?? ??? ?<property name="target">
?? ??? ??? ?<!-- <bean class="com.imooc.aop.api.BizLogicImpl"></bean> -->
?? ??? ??? ? <ref bean="bizLogicImplTarget"/>
?? ??? ?</property>
?? ??? ?<property name="interceptorNames">
?? ??? ??? ?<list>
?? ??? ??? ??? ?<value>moocBeforeAdvice</value>
?? ??? ??? ??? ?<value>moocAfterReturningAdvice</value>
?? ??? ??? ??? ?<value>moocMethodInterceptor</value>
?? ??? ??? ??? ?<value>moocThrowsAdvice</value>
?? ??? ??? ?</list>
?? ??? ?</property>
??? </bean>

如上述在XML文件中所示,為BizLogicImpl創(chuàng)建代理。那么在測(cè)試方法中得到的就是一個(gè)代理類,而這個(gè)代理類的類型是<property name="proxyInterfaces">
?? ??? ?<value>com.imooc.aop.api.BizLogic</value>
??? </property>里面設(shè)置的接口的類型。

就是說得到的JDK代理類型是BizLogic類型的,而你在測(cè)試方法中用BizLogic的實(shí)現(xiàn)類BizLogicImpl來接受這個(gè)代理,顯然類型不能從父類轉(zhuǎn)換成子類,所以報(bào)了ClassCastException。

0 回復(fù) 有任何疑惑可以回復(fù)我~

我在嘗試使用具體類的時(shí)候異常了。?

0 回復(fù) 有任何疑惑可以回復(fù)我~

可以使用具體實(shí)現(xiàn)類。

至于為什么使用接口類型,這是面向?qū)ο蟮乃枷?。這個(gè)要你理解了面向?qū)ο蟮脑O(shè)計(jì)原則及其好處,才能理解為何常用接口。

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

為什么在測(cè)試方法中接收類型必須要使用接口類型,而不能使用具體的實(shí)現(xiàn)類?

我要回答 關(guān)注問題
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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