本站首页    管理页面    写新日志    退出


[java与模式读书笔记]依赖倒转原则(Dependence Inversion)
sunshine 发表于 2006/6/4 19:55:21

依赖倒转原则:要依赖于抽象,不要依赖于具体。 三种耦合关系:零耦合、具体耦合(两个具体类)、抽象耦合(一个具体类和一个抽象类或接口)。 变量的静态类型和真实类型。变量被声明时的类型叫做变量的静态类型。变量所引用的对象的真实类型叫做变量的实际类型。如List employees=new Vector();employees变量的静态类型是List,实际类型是Vector. 怎样做到依赖倒转原则:工厂方法模式、模版方法模式、迭代子模式。    

阅读全文(1605) | 回复(0) | 编辑 | 精华 | 删除

[路上行]不知道清现在还好吗?
sunshine 发表于 2006/6/4 17:17:43

 清恋爱了,告诉我的时候,像在说别人的事,电话那头丝毫体现不出甜蜜。是乎我比她还高兴。真不明白,21年就让她有了看破红尘的感觉。    我答应她,答完辩就和妈去看她,可是学校一次次推迟,我也只好把时间一周周的推,她也只好一次次地催。我知道她心里一定憋着好多事,防备心理又那么强,生活不沉重那是假的。    昨天她告诉我,爸妈催她订婚了,她好为难,爸妈的心情我们能理解,可是清却如此的害怕婚姻,是我也无法预料的。在我看来事业、金钱都不能成为走进婚姻的障碍!我始终相信两个人的共同努力永远比一个人的力量强大的多,不仅仅是简单的相加。也许她有她的想法。    快点结束这里的一切吧,我就可以和妈去看他们了。

阅读全文(4416) | 回复(2) | 编辑 | 精华 | 删除

[路上行]看着他们远走了
sunshine 发表于 2006/6/4 11:30:40

 好想离开了,却还要呆三年,记忆中分别时总是别人送我,这一次却体会到送别人的滋味,说不出的难受!    研三的学长请我们吃晚餐了,心里羡慕的要命。祝贺他们终于自由了!    容走了都快两个星期了吧,还是不习惯没有她的日子,寝室里没有她的大嗓门是乎安静了很多,没有她,我运动的兴趣也似乎没有那么浓了。不知道她在新的地方是否还好?昨天经过留学生公寓时,又看到了那个我们公认最有趣的三口之家,好像是阿拉伯人,怀里又多了个小孩,好可爱的!像个小狗狗,要是被容看到了,我们又要大笑一翻。    
阅读全文(3346) | 回复(0) | 编辑 | 精华 | 删除

[java与模式读书笔记]里氏代换原则(Liskov Substitution Principle)
sunshine 发表于 2006/6/3 17:50:55

一个软件实体如果使用的是一个基类的话,那么一守适用其子类,而且它要本不能察觉出基类对象与子类对象的区别。 比如,一个Base类,另一个Derived类,并且Derived类是Base类的子类。那么一个方法如果可以接受一个基类对象b的话:method1(Base b)那么它就可以接受一个子类对象d.反过来的代换不成立。 里氏代换原则在设计模式中的体现:策略模式,合成模式,代理模式
阅读全文(1735) | 回复(0) | 编辑 | 精华 | 删除

[java与模式读书笔记]抽象类
sunshine 发表于 2006/6/3 17:35:51

抽象类仅提供一个类型的部分实现。可以有实例变量,以及一个或多个构造子。可以同时有抽象方法和具体方法。构造子不能被客户端调用来创建实例。可以被子类调用,从而一个抽象类的所有子类可以有一些共有的实现。 具体类一般不用继承。如两个具体类有继承关系,最可能的修改方案:建立一个抽象类。 抽象类应当拥有尽可能多的共同代码。拥有尽可能少的数据。 什么时候才应当使用继承复用:(1)子类是超类的一个特殊种类,而不是超类的一个角色。也就是区分:"Has-A"与“is-A","Has-A"关系应使用聚合关系描述,只有"Is-A"关系才符合继承关系。 (2)如果不能肯定一个类会不会在将来变成另一个类的子类的话,就不应当将这个类设计成当前这个超类的子类 (3)子类具有扩展超类的责任,而不是置换掉(Override)或注销掉(Nullify)  (4)只有在分类学角度上有意义时,才可以使用继承,不要从工具类继承。
阅读全文(2348) | 回复(0) | 编辑 | 精华 | 删除

[java与模式读书笔记]java语言的接口
sunshine 发表于 2006/6/3 17:16:15

一个java接口是一些方法特征的集合。而没有方法的实现。相当于电源插座。接口的方法只能是抽象的和公开的,接口不能有构造子,可以有public、静态的和final的属性。 接口是对可插入性的保证:关联的可插入性(如果一个关联不是针对一个具体类的,而是针对一个接口的,那么任何实现这个接口的类就都可以满足要求。这样,就可以动态地将这个关联从一个具体类转换到另一个具体类,而这样做的惟一条件是它们都实现某个接口) 调用的可插入性:一个对象需要调用其他对象的方法。这种调用可以是具体类,也可以是接口。这样,任何实现了这个接品的具体类都可以被当前对象调用;而当前对象到底调用的是哪个具体类的实例则完全可以动态地决定。 混合类型:如果一个类有一个主要的超类型,那么通过实现一个接口,这个类可以拥有另一个次要的超类型。这种次要的超类型就叫做混合类型。 java接口常见的用法:单方法接口(只有一个方法)、标识接口(没有任何方法和属性的,它仅仅表明实现它的类属于一个特定的类型)、常量接口(用java接口来声明一些常量
阅读全文(3119) | 回复(0) | 编辑 | 精华 | 删除

[java与模式读书笔记]“开-闭”原则(Open-Closed Principle)
sunshine 发表于 2006/6/3 17:00:30

“开-闭”原则:一个软件应当对扩展开放,对修改关闭。Software entities should be open for extension,but closed for modification. 优越性:1.通过扩展已有的软件系统,可以提供新的行为,以满足对软件的新需求,使变化中的软件系统有一定的适应 性和灵活性。2.已有的软件模块,特别是最重要的抽象层次模块不能再修改,这就使得变化中的软件系统有一定的稳定性和延续性。 对可变性的封装原则:找到一个系统的可变因素,将之封装起来。意味着两点: (1)一种可变性不应当散落在代码的很多角落里,而应被封装到一个对象里面。 (2)一种可变性不应当与另一种可变性混合在一起。    
阅读全文(1922) | 回复(0) | 编辑 | 精华 | 删除

[java与模式读书笔记]软件的可维护性与可复用性
sunshine 发表于 2006/6/3 16:43:47

导致一个软件设计的可维护性较低的原因:过于僵硬、过于脆弱、利用率低、黏度过高。 设计的目标:可扩展性、灵活性、可插入性。 传统的复用:代码的剪贴复用、算法的复用、数据结构的复用 面向对象设计的复用:数据的抽象化和继承关系使得概念和定义可以复用;多态性使得实现和应用可以复用;而抽象化和封闭可以保持各促进系统的可维护性。这样,利用的焦点不再集中在函数和算法等具体细节上,而集中在最重要的含有宏观商业逻辑的抽象层次上。
阅读全文(1898) | 回复(0) | 编辑 | 精华 | 删除

[java与模式读书笔记]类图中的关系(uml)
sunshine 发表于 2006/6/3 15:58:38

类和类、类和接口、接口和接口的关系:一般化关系、关联关系、聚合关系、合成关系和信赖关系。 一般化关系:继承关系。表示方法以:一直线+空心箭头,箭头指向父类。 关联关系:它使一个类知道另一个类的属性和方法。可以是双向,也可是单向的。 聚合关系:是强的关联关系。是整体和人体的关系。例如汽车类与轮胎类。 合成关系:是比聚合关系强的关系。它要求普通的聚合关系中代表整体的对象负责体表部分的对象的生命周期,合成关系是不能共经济共享的。如美猴王类与他的四肢类。因为美猴王的四肢由它自己负责,并且不能共享。 依赖关系:总是单向的,表示一个类依赖于另一个类的定义。如person类依赖于car类和house类,与关联关系不同的是,person类里并没有car和house类型的属性,car和house的实例以参量的方式传入到buy()方法中去的。
阅读全文(1861) | 回复(0) | 编辑 | 精华 | 删除

[java与模式读书笔记]模式简述
sunshine 发表于 2006/6/3 15:30:34

(1)模式化的过程是把问题抽象化,在忽略掉不重要的细节后,发现问题的一般性本质,并找到普遍适用的解决方案的过程。这些本质的就是模式。   (2)模式的起源:建筑师它的三个基本概念:质(自由性、整体性、完备性、和谐性、开放性、可变性、可塑性。。。。)门(通向“质”的管道)道(从“门”到“质”的过程)
阅读全文(1566) | 回复(0) | 编辑 | 精华 | 删除
« 11 12 13 14 15 16 17 18 »

 
«August 2025»
12
3456789
10111213141516
17181920212223
24252627282930
31

  公告

有一种鸟儿是永远关不住的
因为它的每片羽翼上都沾满了自由的光辉

方向:计算机视觉 人工智能 演化算法

 


  我的分类(专题)
  最近日志

  最新评论

  留言板

  链接

  Blog信息
blog名称:阳光海岸心
日志总数:166
评论数量:237
留言数量:-4
访问次数:1450727
建立时间:2006年6月2日



站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.313 second(s), page refreshed 144752357 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号