自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (22)
  • 收藏
  • 关注

转载 设计模式六大原则(2):里氏代换原则

里氏代换原则(Liskov Substitution Principle)里氏代换原则是由麻省理工学院(MIT)计算机科学实验室的Liskov女士,在1987年的OOPSLA大会上发表的一篇文章《Data Abstraction and Hierarchy》里面提出来的,主要阐述了有关继承的一些原则,也就是什么时候应该使用继承,什么时候不应该使用继承,以及其中的蕴涵的原理。2002年,软件工程

2012-03-19 15:22:45 793

转载 AndroidManifest.xml 中的intent-filter

隐式启动Activity的intent到底发给哪个activity,需要进行三个匹配,一个是action,一个是category,一个是data,可以是全部或部分匹配同样适用于Service和BroadcastReceiver,下面是以Activity为例MainActivity.java --主ActivityTestActivity.java --需要隐式启动的Ac

2012-03-19 14:09:49 18668 1

转载 设计模式之五 --- 代理(Proxy)模式

【1】基本概念代理模式(Proxy):为其他对象提供一种代理以控制对这个对象的访问。代理者可以作任何东西的接口:网络连接、内存中的大物件、档案或其它昂贵或无法复制的资源。【2】简单分析我们先看一下该设计模式的UML结构图:我们通过上面的结构图可以看到:Subject类:定义了RealSubject和Proxy的共用接口,这样就可以在任何使用RealSubject的地方都

2012-03-09 13:55:39 806

转载 设计模式之四 --- 建造(Builder)模式

【1】基本概念 建造(Builder)模式是一种对象构建的设计模式,它可以将复杂对象的建造过程抽象出来(抽象类别),使这个抽象过程的不同实现方法可以构造出不同表现(属性)的对象。【2】简单分析我们先来看一下该设计模式的UML结构图上图是Strategy 模式的结构图,让我们可以进行更方便的描述:Builder为创建一个Product对象的各个部件

2012-03-09 13:55:11 585

转载 设计模式之三 --- 策略模式(Strategy Pattern)

策略模式(Strategy):它定义了算法家族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化,不会影响到使用算法的客户。【1】基本概念策略模式是一种定义一系列算法的方法,从概念上来看,所有这些算法完成的都是相同的工作,只是实现不同,它可以以相同的方式调用所有的算法,减少了各种算法类与使用算法类之间的耦合。【2】简单分析我们先来看一下该设计模式的UML结构图

2012-03-09 13:54:42 600

转载 设计模式之二 --- Singleton 模式

【1】基本概念Singleton 是一种创建性模式,它用来确保只产生一个实例,并提供一个访问它的全局访问点。对一些类来说,保证只有一个实例是很重要的,比如有的时候,数据库连接或 Socket 连接要受到一定的限制,必须保持同一时间只能有一个连接的存在。【2】简单分析我们先来看一下该设计模式的UML结构图:为了实现 Singleton 模式,我们需要的是一个静态的变量,能够在

2012-03-09 13:54:10 533

转载 设计模式之一---工厂方法模式【Factory Method模式】

在设计模式中,Factory Method模式是一种比较简单的设计模式,应用比较广泛,但也是一种比较重要的设计模式之一。在很多地方我们都会看到xxxFactory这样命名的类,那么,什么是Factory Method,为什么要用这个模式,如何用Java语言来实现该模式?【1】基本概念FactoryMethod是一种创建性模式,它定义了一个创建对象的接口,但是却让子类来决定具体实例化哪一个类

2012-03-09 13:53:19 493

转载 设计模式六大原则(6):开闭原则

定义:一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。问题由来:在软件的生命周期内,因为变化、升级和维护等原因需要对软件原有代码进行修改时,可能会给旧代码中引入错误,也可能会使我们不得不对整个功能进行重构,并且需要原有代码经过重新测试。解决方案:当软件需要变化时,尽量通过扩展软件实体的行为来实现变化,而不是通过修改已有的代码来实现变化。开闭原则是面向对象设计中最基础的设计原则,

2012-03-09 13:52:01 590

转载 设计模式六大原则(5):迪米特法则

定义:一个对象应该对其他对象保持最少的了解。问题由来:类与类之间的关系越密切,耦合度越大,当一个类发生改变时,对另一个类的影响也越大。解决方案:尽量降低类与类之间的耦合。自从我们接触编程开始,就知道了软件编程的总的原则:低耦合,高内聚。无论是面向过程编程还是面向对象编程,只有使各个模块之间的耦合尽量的低,才能提高代码的复用率。低耦合的优点不言而喻,但是怎么样编程才能做到低耦合呢?那正是

2012-03-09 13:51:22 595

转载 设计模式六大原则(4):接口隔离原则

定义:客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。问题由来:类A通过接口I依赖类B,类C通过接口I依赖类D,如果接口I对于类A和类B来说不是最小接口,则类B和类D必须去实现他们不需要的方法。解决方案:将臃肿的接口I拆分为独立的几个接口,类A和类C分别与他们需要的接口建立依赖关系。也就是采用接口隔离原则。举例来说明接口隔离原则:(图1 未遵循接口

2012-03-09 13:50:50 539

转载 设计模式六大原则(3):依赖倒置原则

定义:高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。问题由来:类A直接依赖类B,假如要将类A改为依赖类C,则必须通过修改类A的代码来达成。这种场景下,类A一般是高层模块,负责复杂的业务逻辑;类B和类C是低层模块,负责基本的原子操作;假如修改类A,会给程序带来不必要的风险。解决方案:将类A修改为依赖接口I,类B和类C各自实现接口I,类A通过接口I间接

2012-03-09 13:50:16 550

转载 设计模式六大原则(2):里氏替换原则

肯定有不少人跟我刚看到这项原则的时候一样,对这个原则的名字充满疑惑。其实原因就是这项原则最早是在1988年,由麻省理工学院的一位姓里的女士(Barbara Liskov)提出来的。定义1:如果对每一个类型为 T1的对象 o1,都有类型为 T2 的对象o2,使得以 T1定义的所有程序 P 在所有的对象 o1 都代换成 o2 时,程序 P 的行为没有发生变化,那么类型 T2 是类型 T1 的子类型

2012-03-09 13:49:37 731

转载 依赖、关联、聚合和组合之间区别的理解

在学习面向对象设计对象关系时,依赖、关联、聚合和组合这四种关系之间区别比较容易混淆。特别是后三种,仅仅是在语义上有所区别,所谓语义就是指上下文环境、特定情景等。他们在编程语言中的体现却是基本相同的,但是基本相同并不等于完全相同,这一点在我的前一篇博文《设计模式中类的关系》中已经有所提及,下面就来详细的论述一下在java中如何准确的体现依赖、关联、聚合和组合。首先看一看书上对这四种关系的定义:

2012-03-09 13:49:05 9435 1

转载 设计模式中类的关系

在java以及其他的面向对象设计模式中,类与类之间主要有6种关系,他们分别是:依赖、关联、聚合、组合、继承、实现。他们的耦合度依次增强。1. 依赖(Dependence) 依赖关系的定义为:对于两个相对独立的对象,当一个对象负责构造另一个对象的实例,或者依赖另一个对象的服务时,这两个对象之间主要体现为依赖关系。定义比较晦涩难懂,但在java中的表现还是比较直观的:类A当中使用了类B,其

2012-03-09 13:48:08 807

转载 设计模式六大原则(1):单一职责原则

定义:不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。问题由来:类T负责两个不同的职责:职责P1,职责P2。当由于职责P1需求发生改变而需要修改类T时,有可能会导致原本运行正常的职责P2功能发生故障。解决方案:遵循单一职责原则。分别建立两个类T1、T2,使T1完成职责P1功能,T2完成职责P2功能。这样,当修改类T1时,不会使职责P2发生故障风险;同理,当修改T2时,也

2012-03-09 13:46:49 892

转载 掌握设计模式

IT职场的小菜经常有这样的疑问:为什么一个相似的功能,大牛一会儿就搞定,然后悠闲地品着下午茶逛淘宝;而自己加班加点搞到天亮还做不完。为什么用户提出需求变更后,大牛只需潇洒地敲敲键盘,改改配置;而自己将代码改了又改,删了又建,几乎晕厥,最后只能推翻重来。为什么大牛写完的程序测试上线后,几乎完美运行,用户无懈可击;而自己的程序bug重重,改好一个却又引出另一个,按下葫芦浮起瓢,几近崩溃。

2012-03-09 13:45:45 624

原创 J2ME中文编码问题

中文 J2ME中文编码问题1. 简介 本文介绍JavaME中文编码的相关问题,这个问题一度是互联网上的开发者们讨论的热门话题。本文整理和综合了网上众多相关内容,尽可能的为开发者提供一个全面、系统的认识。文中的代码仅用来说明原理,可能很不完整,缺乏变量定义或者返回值,请谅解。部分代码直接来源于网上的其他资料。 感谢众多开发者在中文编码问题上做出的努力与探索。总结中有什么问题的话,

2012-03-02 15:43:09 599

转载 Java IO

什么是流: 流是一个抽象的概念。当Java程序需要从数据源读取数据时,会开启一个到数据源的流。数据源可以是文件,内存或者网络等。同样,当程序需要输出数据到目的地时也一样会开启一个流,数据目的地也可以是文件、内存或者网络等。流的创建是为了更方便地处理数据的输入输出。流分为字节流和字符流。字节流也称为原始数据,需要用户读入后进行相应的编码转换。而字符流的实现是基于自动转换的,读取数据时

2012-03-01 16:32:53 416

转载 PRAGMA AUTONOMOUS_TRANSACTION 自制事务

数据库事务是一种单元操作,要么是全部操作都成功,要么全部失败。在Oracle中,一个事务是从执行第一个数据管理语言(DML)语句开始,直到执行一个COMMIT语句,提交保存这个事务,或者执行一个ROLLBACK语句,放弃此次操作结束。事务的“要么全部完成,要么什么都没完成”的本性会使将错误信息记入数据库表中变得很困难,因为当事务失败重新运行时,用来编写日志条目的INSERT语句还未完成

2012-03-01 13:37:30 590

转载 数据库 oracle for update of 和 for update区别【经典】

对比区别:  select * from TTable1 for update 锁定表的所有行,只能读不能写  2 select * from TTable1 where pkid = 1 for update 只锁定pkid=1的行  3 select * from Table1 a join Table2 b on a.pkid=b.pkid for update 锁定两个表的所有

2012-03-01 11:27:20 544

personal idea设置

idea设置

2023-12-27

android中shape的使用

android中shape的使用: http://blog.csdn.net/luohai859/article/details/41038443

2014-11-12

AChartEngine源码

AChartEngine最新版 V1 1 0 源码 包括例子 jar包 源代码

2014-10-24

Android 设计模式

Android 各种设计模式例子

2014-05-15

android瀑风流

android瀑风流源码Demo(仿蘑菇街)

2014-02-12

疯狂投篮3d游戏 源代码

android 疯狂投篮3d游戏 源代码

2013-09-18

Android实例大全(达内培训)

Android实例大全(达内培训)

2013-09-17

Cocos2d-x 喵星战争 源代码 android版

Cocos2d-x 喵星战争 源代码 android版

2013-08-20

COCOS2D-X手机游戏开发

COCOS2D-X手机游戏开发

2013-08-20

j2me转为android

j2me转为android

2013-01-05

boost_下载,安装,试用

boost_下载,安装,试用

2012-10-08

Rational Rose 2003教程

Rational Rose 2003教程

2011-06-07

j2me 中 xml解析工具kxml api

j2me 中 解析xml文件的第三方包kxml API

2011-05-16

rational rose 教程

Rational Rose是一套可视化建模工具,用于在C/S,分布式企业环境下开发健壮的,有效的解决方案以满足真正的业务需求。本教程通过指导你一步步地进行一个复杂的业务问题的真正实现解决,教给你如何使用Rose。

2011-04-13

jdk_1.6绿色版03

jdk_1.6绿色版,由于上传限制,分为四部分。四部分全下完,解压第一个会自动顺序解压完剩下的三个.

2010-03-03

jdk_1.6绿色版02

jdk_1.6绿色版,由于上传限制,分为四部分。四部分全下完,解压第一个会自动顺序解压完剩下的三个.

2010-03-03

关于SWT的中文教程

网上目前很难找到SWT的中文资料,我找到了一点,传上来给大家分享.

2009-08-28

SWT开发工具Jigloo

Jigloo是一个很好的SWT开发组件,配合Eclipse开发SWT应用界面.

2009-08-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除