Builder模式是一种创建型模式。Builder使用链式调用来一步一步地组装一个复杂的对象。
public class alertDialogActivity extends Activity {
private Button btn;
protected void onCreate(Bundle savedInstanceState) {
setContentView(R.layout.alert_dialog_activity);
// Builder使用链式调用一步一步的构建alertDialog实例
.setTitle("alertDialog使用Builder模式创建")
.setPositiveButton("确定", new DialogInterface.onClickListener() {
public void onClick(DialogInterface dialog, int which) {
//alertDialog消失
}
btn.setonClickListener(new View.onClickListener() {
public void onClick(View v) {
alertDialog.show();
});
}
//定义类AppProgrammerController,构造方法私有,
public class AppProgrammerController {
String pAndroid;//Android基础
String pAlg;//算法
String pProject;//练习的项目
private AppProgrammerController(){}
if(apc!=null && apc.pLanguage.equals("JAVA")
&& apc.pAlg.equals("算法基础") &&
return true;
return false;
}
//实例化外部类AppProgrammerController
public Builder(){
appProgrammerController=new AppProgrammerController();
//set方法返回this 用于链式调用
public Builder setpLanguage(String pLanguage) {
return this;
public Builder setpAndroid(String pAndroid) {
return this;
public Builder setpDb(String pDb) {
return this;
public Builder setpAlg(String pAlg) {
return this;
public Builder setpDs(String pDs) {
return this;
public Builder setpProject(String pProject) {
return this;
//创建AppProgrammerController
return appProgrammerController;
}
// 在Activity中测试效果
buildeBtn.setonClickListener(new View.onClickListener() {
public void onClick(View v) {
//使用Builder模式构建对象appProgrammerController
new AppProgrammerController.Builder()
.setpAndroid("Android")
.setpDb("SQLite")
.setpProject("桌球")
if(appProgrammerController.canProgramAndroidApp(appProgrammerController)){
alert.alertMsg("掌握了Android开发的基础知识,可以开发Adroid APP了");
}
});
