亚洲精品国产精品乱码视色,下载应用成人电影AVapp,成人影院下载视频

      <track id="gfhue"><i id="gfhue"></i></track><input id="gfhue"></input>

      1. 更多精彩內(nèi)容,歡迎關(guān)注:

        視頻號(hào)
        視頻號(hào)

        抖音
        抖音

        快手
        快手

        微博
        微博

        當(dāng)前位置:首頁 科技百科 java delegate

        java delegate

        文檔

        java delegate

        delegate是一種設(shè)計(jì)模式,即一個(gè)對(duì)象不能完成的事情,委托另一個(gè)對(duì)象幫其完成,delegate定義代理為屬性時(shí),使用weak修飾,避免造成對(duì)象的循環(huán)引用,引起內(nèi)存泄露。
        推薦度:
        導(dǎo)讀delegate是一種設(shè)計(jì)模式,即一個(gè)對(duì)象不能完成的事情,委托另一個(gè)對(duì)象幫其完成,delegate定義代理為屬性時(shí),使用weak修飾,避免造成對(duì)象的循環(huán)引用,引起內(nèi)存泄露。

        java delegate是什么,讓我們一起了解一下?

        delegate是一種設(shè)計(jì)模式,即一個(gè)對(duì)象不能完成的事情,委托另一個(gè)對(duì)象幫其完成,delegate定義代理為屬性時(shí),使用weak修飾,避免造成對(duì)象的循環(huán)引用,引起內(nèi)存泄露。

        如何在java中定義delegate代理?

        在java中定義delegate代理需要進(jìn)行實(shí)現(xiàn)的方式。代碼示例如下:

        -?(void)orderTickerForMe
        {
        ?????????NSLog(@"叫人幫我訂票");
        ?????????
        ?????????if?(self.tickerDelegate?&&?[self.tickerDelegate?respondsToSelector:@selector(orderTicker)])
        ?????????{
        ?????????????[self.tickerDelegate?orderTicker];
        ?????????}
        }
        -?(void)getTickerForMe
        {
        ?????????NSLog(@"叫人幫我取票");
        ?????????
        ?????????if?(self.tickerDelegate?&&?[self.tickerDelegate?respondsToSelector:@selector(getTicker)])
        ?????????{
        ?????????????[self.tickerDelegate?getTicker];
        ?????????}
        }

        那我們?cè)谑褂脮r(shí)應(yīng)該注意什么?

        1、導(dǎo)入該對(duì)象的頭文件。

        2、實(shí)例化該對(duì)象。

        3、設(shè)置該對(duì)象的代理。

        4、添加該對(duì)象的協(xié)議。

        5、實(shí)現(xiàn)該對(duì)象的代理方法。

        實(shí)戰(zhàn)操作:

        因?yàn)樵趈ava中就沒有delegate這個(gè)字段了,所以要實(shí)現(xiàn),不過也不是很復(fù)雜。

        1、首先定義一個(gè)interface

        //?觀察者
        public?interface?IConnectEventObserver
        {
        //?接受到一個(gè)包
        public?void?OnRecvANetworkPacket(ConnectPacket?packet);
        }

        2、然后定義一個(gè)虛類,在里面定義通知對(duì)象。

        //?通知者
        public?abstract?class?ConnectEventINotifier?{
        protected?ArrayList?observerList?=?new?ArrayList();
        /**
        *?新增一個(gè)observer
        *?@param?observer?添加的觀察者
        *?@return?是否添加成功/新添加
        */
        public?boolean?AddObserver(IConnectEventObserver?observer){
        if(observer?==?null)
        {
        throw?new?NullPointerException();
        }
        if(?observerList.indexOf(observer)>=?0){
        //?重復(fù)添加觀察者
        return?false;
        }
        observerList.add(observer);
        return?true;
        }
        /**
        *?刪除一個(gè)observerList
        *?@param?observer
        *?@return?是否刪除成功,如果失敗,代表這個(gè)觀察者并沒有注冊(cè)
        */
        public?boolean?RemoveObserver(IConnectEventObserver?observer){
        if(observer?==?null){
        throw?new?NullPointerException();
        }
        int?observerIndex?=?observerList.indexOf(observer);
        if(?observerIndex>=?0){
        observerList.remove(observerIndex);
        return?true;
        }
        return?false;
        }
        /**
        *?通知所有觀察者
        *?@param?packet
        *?@return
        */
        protected?boolean?NotifyAllObserver(ConnectPacket?packet){
        for(IConnectEventObserver?observer?:?observerList)?{
        observer.OnRecvANetworkPacket(packet);
        }
        return?true;
        }
        }

        以上就是小編今天的分享了,希望可以幫助到大家。

        文檔

        java delegate

        delegate是一種設(shè)計(jì)模式,即一個(gè)對(duì)象不能完成的事情,委托另一個(gè)對(duì)象幫其完成,delegate定義代理為屬性時(shí),使用weak修飾,避免造成對(duì)象的循環(huán)引用,引起內(nèi)存泄露。
        推薦度:
        為你推薦
        資訊專欄
        熱門視頻
        相關(guān)推薦
        java調(diào)用c++接口 java調(diào)用c++ java獲取絕對(duì)值 java delete java調(diào)用asmx接口 java dependency java dev java fastdfs java development java dict java fastjson java feign java divide java field java field獲取值 java dockerfile java file.exists() java fileinputstream java findfirst java flatmap java decodeuri java decode java調(diào)python java decaf java讀取本地excel java讀取json java dataset java規(guī)則引擎 java dataframe java表單校驗(yàn) java獲得當(dāng)前路徑 java dashboard java獲取隨機(jī)數(shù) java daemon java獲取隨機(jī)字符串 java ctp java獲取運(yùn)行時(shí)間 java cssbox java獲取路徑 java獲取請(qǐng)求域名
        Top