1. 程式人生 > 實用技巧 >繫結方法、非繫結方法與靜態方法

繫結方法、非繫結方法與靜態方法

注意
真實物件和代理物件都要實現同一個介面
代理物件要代理真實角色
好處
代理物件可以做很多真實物件做不了的事情
真實物件專注做自己的事情
package Day5;

import java.security.PrivateKey;
//靜態代理模式 代理物件代替真實物件做事
public class Wedding {
public static void main(String[] args) {
/WeddingCompany weddingCompany = new WeddingCompany(new you());//代理物件代表真實物件建立物件
weddingCompany.Marry();

/
new Thread(()-> System.out.println(“拉姆達表示式”)).start();//lambda表示式
WeddingCompany weddingCompany = new WeddingCompany(new you());
weddingCompany.Marry();
}
}
interface Marry{//方法
void Marry();
}
class you implements Marry{//真實物件

@Override
public void Marry() {//真實物件的方法
    System.out.println("我要結婚啦");
}

}
class WeddingCompany implements Marry{ //代理物件
private Marry target;//代理真實角色–》you

public WeddingCompany(Marry target) { //代理物件傳遞引數
    this.target = target;
}
@Override
public void Marry() {
    brfore();//代理物件的方法
    this.target.Marry();//代理物件使用真實物件的方法
    after();//代理物件的方法
}

private void after() {
    System.out.println("洞房");
}

private void brfore() {
    System.out.println("收彩禮");
}

}