Description détaillée du mode Builder : http://www.php.cn/java-article-355847.html
Prenons d'abord une photo
Je vois qu'il existe encore de nombreux endroits où le modèle Builder est utilisé dans Android.
est grossièrement utilisé comme suit :
Notification noti = new Notification.Builder(context).build();AlertDialog dialog = new AlertDialog.Builder(context).create();
Vous pouvez également créer plusieurs attributs avant builder() et create(), similaire à l'exemple suivant
Exemple
/** * 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(); } }
Remarque :
1 Ici, les pièces sont construites via le constructeur de classe interne statique
<.> 2. La méthode de construction de chaque partie renvoie le constructeur
3. L'accesseur de la méthode de construction de l'objet réel externe doit être privé ou protégé, de sorte qu'il ne puisse être créé via la classe interne
Comparaison avec un Java-Bean ordinaire :
Bean utilise des setters ou un tas de paramètres dans le constructeur pour attribuer des valeurs à propriétésIci, utilisez new Builder().a.b.c...build();Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!