- 浏览: 120477 次
- 性别:
- 来自: 东莞
-
文章分类
最新评论
-
xianzi_2008:
spring-config.xml是什么啊
使用Spring Mock测试Action中的方法 -
品信Q88:
独立网店的迅速发展已经成为中国电子商务发展道路上不可阻挡的趋势 ...
独立网店有什么好处,独立网店好还是淘宝网店拍拍网店好 -
Javakeith:
不说文章怎么样!我怎么看百度 心里就来气呢!
Powerdesigner连接Mysql数据库配置图解
应用1:
1. 代码:
在BroswerActivity.java中,有对WebViewClient的创建,代码如下:
private final WebViewClient mWebViewClient = new WebViewClient() {
……
/**
* Displays SSL error(s) dialog to the user.
*/
@Override
public void onReceivedSslError(
final WebView view, final SslErrorHandler handler, final SslError error) {
……
new AlertDialog.Builder(BrowserActivity.this)
.setTitle(R.string.security_warning)
.setIcon(android.R.drawable.ic_dialog_alert)
.setView(warningsView)
.setPositiveButton(R.string.ssl_continue,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
handler.proceed();
}
})
.setNeutralButton(R.string.view_certificate,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
showSSLCertificateOnError(view, handler, error);
}
})
.setNegativeButton(R.string.cancel,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
handler.cancel();
BrowserActivity.this.resetTitleAndRevertLockIcon();
}
})
.setOnCancelListener(
new DialogInterface.OnCancelListener() {
public void onCancel(DialogInterface dialog) {
handler.cancel();
BrowserActivity.this.resetTitleAndRevertLockIcon();
}
})
.show();
……
2. 分析:
(1)功能:正如注释中所示,创建一个error dialog并显示
(2)模式说明: 这里,使用了简化的builder模式,将抽象建造者省略,只使用一个具体建造者,并且将指导者角色也省略了。 AlertDialog.Builder就是具体建造者,另外,它是以匿名类的方式被创建的,而且,Builder类是AlertDialog的内部类,这样,耦合性比较低,这正是面向对象中要达到的设计意图之一。 最后调用show函数,它的返回类型正是我们要创建的产品,即AlertDialog。 所以,Builder(具体建造者)是AlertDialog(产品)的内部匿名类,用来创建并显示一个dialog。
(3)启示: 我们完全可以对builder模式进行简化,将抽象建造者甚至指导者角色省略。 具体创建者和产品之间可以用内部类来实现,以达到低耦合的目的。
应用2:StringBuilder,StringBuffer
1. 代码:
public class DefaultHttpClientConnection extends SocketHttpClientConnection {
……
public String toString() {
StringBuffer buffer = new StringBuffer();
buffer.append("[");
if (isOpen()) {
buffer.append(getRemotePort());
} else {
buffer.append("closed");
}
buffer.append("]");
return buffer.toString();
}
}
2.分析:
(1)功能:StringBuffer和StringBuilder是包含在java.lang包中的,在android中的实现和标准java2的实现不一样,如下:
(2)模式说明:
• 这里,使用了简化的builder模式,将指导者角色省略。
• builder模式被用于实现DefaultHttpClientConnection的成员函数toString。
• 最后的return buffer.toString()其实返回的就是产品String。
(3)启示:
• 完全可以用builder模式去实现一个类的成员函数。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/liranke/archive/2010/04/27/5535689.aspx
发表评论
-
Java代码优化与sql语句优化
2013-04-11 18:04 1282代码优化: 1.对于一修修饰符的使用:该使用final、 ... -
java基础
2012-01-11 18:04 934Servlet生命周期与工作原 ... -
hibernate二级缓存实战之OSCache
2011-03-04 15:32 772附件为本实例源码 -
Java程序优化技巧
2011-03-01 10:32 771可供程序利用的资源(内存、CPU时间、网络带宽等)是有限的,优 ... -
Java中四种XML解析技术
2010-12-02 11:22 684在平时工作中,难免会遇到把 XML 作为数据存储格式。面对目前 ... -
初识设计模式
2010-12-01 22:20 749从JAVA类库看设计模式:ht ... -
JAVA设计模式之Observer
2010-12-01 22:18 930一. Observer樣式應用於Android框架設計 来自: ... -
JAVA设计模式之Abstract Factory
2010-12-01 22:08 846abstract factory是对象的创建型模式。这种设计模 ... -
JAVA设计模式之Template method
2010-12-01 22:04 1188模板方法(Template method)模式在Android ... -
java设计模式之Decorator与Adapter
2010-12-01 20:31 823JAVA IO 设计模式彻底分 ... -
Java中byte、short、int之间的转换
2010-11-25 16:35 3676先温习下计算机基础理论 byte是一个字节保存的,有8个位, ... -
学习java的好去处
2010-11-14 15:00 8341、http://cn.sun.com/ ... -
基于xmlrpc的远程控制管理
2010-11-12 15:32 1280此文转自:http://helloha ... -
java远程通讯技术及简单实现
2010-11-12 15:29 1101此文转自:http://staratsky.iteye.com ... -
java堆栈
2010-10-18 11:23 692Java栈与堆 ----对这两 ... -
java.util.concurrent 多线程框架
2010-09-30 14:53 968(来源于http://www.zhuaxia.com/item ... -
主题:减少变量实例化次数有多大作用
2010-09-24 23:21 971在JE上看到了一个帖子讨论下面这种代码的优化问题的: ... -
Java的IO系统工作原理
2010-09-17 17:08 866Java的IO系统工作原理 ... -
Java字符编码
2010-04-28 15:19 890java在线中文API:http://doc.java.sun ...
相关推荐
Java设计模式中的Builder模式和Decorator模式是两种重要的设计模式,它们在软件开发中起到优化代码结构、提高代码复用性和灵活性的作用。 1. 建造者模式(Builder) 建造者模式是一种创建型设计模式,它的主要目的...
Java设计模式之Builder建造者模式 Java设计模式之Builder建造者模式是一种创建型设计模式,主要用于创建复杂对象。该模式的主要思想是将对象的创建过程拆分成多个步骤,让客户端可以通过一步步的方式来创建对象。 ...
设计模式之Builder 设计模式之Singleton(单态) 结构模式: 设计模式之Facade(外观) 设计模式之Proxy(代理) 设计模式之Adapter(适配器) 设计模式之Composite(组合) 设计模式之Decorator(油漆工) 设计模式之Bridge 设计...
Builder设计模式是创建型模式之一,主要解决复杂对象的构建问题,使得构建过程与表示分离。 Builder模式的核心思想是将一个复杂对象的构建与其表示分离,使得同样的构建过程可以创建不同的表示。这种模式通常应用于...
《Java设计模式之禅》是一本深入浅出讲解设计模式的书籍,书中不仅包含23种经典设计模式的案例,还详细介绍了设计模式背后的思想和原则,适合初学者以及对设计模式有一定了解的程序员阅读。本书旨在帮助读者理解如何...
Java设计模式是软件工程中的一种最佳实践,它总结了在特定场景下解决常见问题的经验,为程序员提供了可重用的解决方案。本资料“《java设计模式》课后习题模拟试题解答——刘伟.zip”主要涵盖了Java设计模式的学习与...
《Java设计模式》是刘伟教授的一本关于设计模式的教材,主要面向高等学校的学生和对Java编程有深入兴趣的开发者。设计模式是软件工程中的一种重要思想,它封装了在特定场景下的问题解决方案,可以提高代码的可读性、...
" JAVA 设计模式概述" JAVA 设计模式是指在软件设计过程中,为了提高代码的可维护性、灵活性和可扩展性所使用的一些惯用解决方案。JAVA 设计模式可以分为三种:创建模式、结构模式和行为模式。 1. 创建模式 创建...
**建造者模式(Builder Pattern)**是软件设计模式中的一种,属于创建型模式。它将复杂对象的构建过程与它的表示分离,使得同样的构建过程可以创建不同的表示。建造者模式通常用于那些需要大量构造参数的对象,通过...
### Java设计模式详解 在软件开发领域,设计模式是一种被广泛采用的解决方案,用来解决常见的设计问题。设计模式不仅能够帮助开发者写出可复用、可维护的代码,还能提高团队间的沟通效率。以下是对给定文件中提到的...
此外,为了确保参考资料的权威性,建议读者查阅原书《Java设计模式》以获得更加详尽的解释和说明。如果有任何意见或建议,可以通过提供的电子邮箱与作者联系。在学习设计模式的过程中,理解每一个模式的意图、结构、...
在《Java设计模式》这本书的模拟试题及其参考答案中,涉及了多条设计模式的知识点,以及它们的应用场景和实现方法。现在将这些知识点详细地解释如下: 1. 开闭原则(Open-Closed Principle, OCP): 开闭原则是面向...
Java设计模式是软件开发中的一种最佳实践,它总结了在解决特定问题时程序员们经常采用的有效方法。这个“JAVA设计模式-chm版”资源显然包含了关于Java设计模式的详细信息,便于理解和应用。设计模式是对常见问题的...
"Builder"模式是其中的一种行为设计模式,它主要用于构造复杂对象的创建过程,将对象的创建步骤分离,使得同样的构建过程可以创建不同的表示。Builder模式允许我们更加灵活地构造对象,而无需关注其内部的构建细节。...
Java设计模式是软件开发中的重要概念,它是一种在特定情境下解决问题的经验总结,可以被复用在各种不同的软件系统中。这个"JAVA设计模式(chm版)"是一个关于Java设计模式的电子书,采用CHM(Microsoft Compiled ...
Java设计模式是软件工程中的一种最佳实践,它提供了一种在特定情况下解决常见问题的模板。这些模式在软件开发中被广泛使用,因为它们能够使代码更可读、可维护和可扩展。在这个名为"java设计模式程序源代码"的压缩包...
Java设计模式是面向对象编程领域中的重要概念,它是一套被广泛接受并实践的解决软件设计问题的经验总结。设计模式并非具体的代码或库,而是一种描述在特定情况下,如何设计和实现软件组件的经典方法。这些模式是经过...
Builder模式是一种设计模式,主要用来解决复杂对象的构建问题,特别是在对象的构造过程中涉及大量的参数时。在Java编程中,Builder模式提供了一种更加灵活、结构化的创建对象的方式,避免了构造函数的过度膨胀和...
Java设计模式是软件工程中的一种最佳实践,它是一种在特定情境下解决常见问题的经验总结。这份"java设计模式PPT"资源提供了系统化的学习材料,旨在帮助开发者提升编程思维,理解如何有效地组织代码,提高软件的可...