Home  >  Article  >  Java  >  Detailed introduction to the case of Android builder (Builder) mode

Detailed introduction to the case of Android builder (Builder) mode

黄舟
黄舟Original
2017-03-11 11:47:421300browse

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!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn