Details on the Builder mode: http://www.php.cn/java-article-355847.html
Let’s take a picture first
See that there are still many places where the Builder mode is used in Android.
The usage is as follows:
Notification noti = new Notification.Builder(context).build();AlertDialog dialog = new AlertDialog.Builder(context).create();
You can also create multiple attributes before builder() and create(), similar to the following example
Example
/** * author : stone * email : aa86799@163.com * time : 15/7/3 10 26 */ public class TestBuilder { private int a; private String b; public int getA() { return a; } public String getB() { return b; } protected TestBuilder(Builder builder) { this.a = builder.ma; this.b = builder.mb; } public static class Builder { private int ma; private String mb; public Builder createA(int a) { this.ma = a; return this; } public Builder showB(String b) { this.mb = b; return this; } public TestBuilder build() { return new TestBuilder(this); } } public static void main(String[] args) { TestBuilder tb = new TestBuilder.Builder() .createA(88) .showB("susan") .build(); } }
Note:
1. Here the parts are constructed through the static inner class Builder
2. Each The construction method of the part returns the builder
3. The accessor of the construction method of the external actual object should be private or protected, so that it can only be created through the inner class
Comparison with ordinary Java-Bean:
Bean uses setters or a bunch of parameters in the constructor to assign values to properties
Here, Use new Builder().a.b.c...build();
The above is the detailed content of Detailed introduction to the case of Android builder (Builder) mode. For more information, please follow other related articles on the PHP Chinese website!