android源码中不同设计模式的使用总结

设计模式之Builder模式 - Builder

2017-02-25  本文已影响32人  ahking17

当一个类的构造方法中参数过多时, 可以考虑使用Builder模式.

这样做的好处是:

为设置每一个参数提供一个单独的API, 让使用者更明白使用这个参数的意义.
同时, 对这些参数的设置是在内部类Builder中完成的, 在目标类中不提供设置这些属性的值的setter API.这样就保证了目标类的对象在创建后, 这些属性的值不会再发生改变.

典型的使用代码
AlertDialog.Builder builder=new AlertDialog.Builder(this);
builder.setIcon(R.mipmap.ic_launcher);
builder.setTitle(R.string.simple_list_dialog);
builder.setCancelable(true);
AlertDialog dialog=builder.create();
dialog.show();

AlertDialog对象的创建是由它的内部类AlertDialog.Builder负责完成的.
在AlertDialog对象创建完成后, 它的这些属性值也就无法修改了, 因为在调用了dialog.show();后再去修改这些属性值也没有任何的意义.

上一篇下一篇

猜你喜欢

热点阅读