核心就是隱藏構(gòu)造方法,通過一個(gè)靜態(tài)內(nèi)部類封裝構(gòu)造躺盛。隱藏構(gòu)建過程项戴。
主要使用于對(duì)象比較復(fù)雜的時(shí)候, Android中我們使用最多的就是AlertDialog了槽惫。
public class MediaPlayer {
private LivingPlayer livingPlayer;
private VidoPlayter vidoPlayter;
private String PlayUrl;
private Callback mcallback;
public MediaPlayer(Builder builder) {
this.livingPlayer=builder.livingPlayer;
this.vidoPlayter=builder.vidoPlayter;
this.PlayUrl=builder.PlayUrl;
this.mcallback=builder.mcallback;
}
interface Callback {
void callback();
}
public static class Builder{
private LivingPlayer livingPlayer;
private VidoPlayter vidoPlayter;
private String PlayUrl;
private Callback mcallback;
public Builder setLivingPlayer(LivingPlayer livingPlayer) {
this.livingPlayer = livingPlayer;
return this;
}
public Builder setVidoPlayter(VidoPlayter vidoPlayter) {
this.vidoPlayter = vidoPlayter;
return this;
}
public Builder setPlayUrl(String playUrl) {
PlayUrl = playUrl;
return this;
}
public Builder setCallback( Callback callback) {
mcallback = callback;
return this;
}
public MediaPlayer build(){
return new MediaPlayer(this);
}
}
}
使用
MediaPlayer.Builder builder=new MediaPlayer.Builder();
builder.setLivingPlayer(new LivingPlayer(AppApplication.appContext));
MediaPlayer livingplayer=builder.build();
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者