什么是Android中的Builder类,它的目的是什么?

时间:2018-03-12 18:22:00

标签: android builder

我正在研究NotificationManager,但我无法理解构建器的用途。 Notification n = new Notification.Builder(this)

2 个答案:

答案 0 :(得分:1)

Builder不是特定于Android环境的东西,因为它是design patternNotification类恰好使用了这种模式。

正如您在Notification docs上看到的那样:

  

添加了Notification.Builder以便于构建   通知。

这就是Builder的意义所在。 让事情变得更轻松

这种模式的唯一目的是将复杂对象的构造与其表示分开。正如oopaterns website所述:

  

此模式允许客户端对象通过仅指定其类型和内容来构造复杂对象,并屏蔽与对象表示相关的详细信息。

因此,不是调用具有大量参数的构造函数,而是创建构建器,并使用所需的参数对其进行微调,然后调用build()方法来创建所需的对象。

当您拥有预定义的对象模板时,它也会有所帮助,您可以使用构建器模式来实例化此类对象,而无需将参数传递给它。

您可以在this tutorial上了解更多相关信息。

答案 1 :(得分:0)

构建器是一种用于创建特定对象(Notification,AudioFocusRequest等)的模式,因此请尝试按以下步骤逐步构建通知。

Notification noti = new Notification.Builder(mContext)
     .setContentTitle("New mail from " + sender.toString())
     .setContentText(subject)
     .setSmallIcon(R.drawable.new_mail)
     .setLargeIcon(aBitmap)
     .build();
  • 您可以找到更多信息

关于Builder:-https://www.tutorialspoint.com/design_pattern/builder_pattern.htm

关于Notification.Builder:- https://developer.android.com/reference/android/app/Notification.Builder