- 博客(11)
- 资源 (1)
- 收藏
- 关注
原创 可复用设计 原则
一、开闭原则 “Software entities should be open for extension,but closed for modification”。翻译过来就是:“软件实体应当对扩展开放,对修改关闭”,通俗的讲就是增加新功能而不修改源代码。 二、LSP(里氏转换原则) 任何基类可以出现的地方,子类一定可以出现。 LSP讲的是基类和子类的关系。只有
2013-01-20 16:29:11
625
原创 JAVA中的protected(详解),以及和clone()方法有关的一些问题
很多的有关介绍JAVA语言的书籍,都对protected介绍的比较的简单,就是被protected修饰的成员或方法,对于本包和其子类可见,这里说的并不是完全的正确。 对于protected的成员或方法,要分子类和超类是否在同一个包中。 与基类不在同一个包中的子类,只能访问自身从基类继承而来的受保护成员,而不能访问基类实例本身的受保护成员。 * Class SubB has acc
2012-12-05 22:10:06
2820
3
转载 setjmp&longjmp
有时候,当接收到一个信号时,希望能跳回程序中以前的一个位置执行。例如,在有 的程序内,当用户按了中断键,则程序跳回到显示主菜单执行。我们可以用库系统调用 setjmp()和longjmp()来完成这项工作。setjmp()能保存程序中的当前位置(是通过保存堆栈 环境实现的),longjmp()能把控制转回到被保存的位置。在某种意义上,longjmp()是远程跳 转,而不是局部区域内的跳转。
2012-11-30 11:00:48
445
转载 C语言中#if,#if defined ,#ifdef,extern的用法描述
1、#if 和#ifdef 当asd_eee表达式存在而且,值为ture的时候继续向下执行 例如 #define TARGET_LITTLE_ENDINA 1 #define TARGET_BIG_ENDINA 0 #ifdef TARGET_LITTLE_ENDINA call little endina function #else call big endina fun
2012-11-30 09:41:14
1378
原创 java 中equals方法的覆盖
(1)如果子类能够拥有自己的相等性概念,则对称性需求将强制采用getClass()方法进行检测 (2)如果由超类决定相等性概念,那么就可以使用instanceof 进行检测,这样就可以在不同的子类的对象之间进行比较 下面是一个覆盖equals()方法的比较好的proposal: 1) 显示参数命名为otherObject,稍后需要将它转化成叫做other的变量。 2) 检测this和
2012-11-29 20:52:48
577
原创 java的多态的理解
在java中,对象变量是多态的,一个超类的变量既可以引用它自身的对象,也可以引用它的子类的对象,例如:Emloyee e=new Employee(); Manager m =new Manager(); 对于引用e既可以是本身是Employee对象,也可以引用其子类对象(Manager)m。 其实就是java中的置换原则:程序中的出现的超类的任何
2012-11-29 19:08:54
326
原创 UML类图关系大全
1、关联 双向关联: C1-C2:指双方都知道对方的存在,都可以调用对方的公共属性和方法。 在GOF的设计模式书上是这样描述的:虽然在分析阶段这种关系是适用的,但我们觉得它对于描述设计模式内的类关系来说显得太抽象了,因为在设计阶段关联关系必须被映射为对象引用或指针。对象引用本身就是有向的,更适合表达我们所讨论的那种关系。所以这种关系在设计的时候比较少用到,关联一般都是有向的。
2012-11-03 17:59:24
291
原创 C语言中,关于&,^,!布尔代数,移位操作的一些巧妙算法
(1) 例如检查一个数X的第n位是否为1,我们可以通过下面的算法实现: int nBitCheck=(x&pow(2,n-1))/pow(2,n-1);如果返回的是1,则第n位为1,若果是0,则为0; 我们可以通过>>和 int nBitCheck=(x&(1>(n-1); (2)统计一个数X(一个字长16位)中1的个数,int bitCount(unsigned int x) {
2012-11-02 11:25:56
651
原创 Kinect开发-->OpenNI的安装及应用
现在主流的kinect驱动有: Microsoft的原厂SDK(支持64位和32位,需要使用win7+VS2010+DirectX11SDK)。但 是非开源,想要了解具体算法的朋友就不必考虑了,适合想用Kinect结合骨骼识别制作 产品的人员。 PrimeSense公司的OPENNI系列(开源+多平台64+32),主要由三部分组成(从底层到
2012-10-31 17:25:57
756
翻译 OpenNI安装及下载
1:软件下载 请针对你的操作系统选择合适的安装文件。Windows平台下,每一种安装文件又分为Development版和Redist版。Development版本是针对开发者(程序员)。Redist版本是针对使用者(玩家)。 (1)OpenNI Unstable Build for Windows x86(32-bit) v1.5.2.7 Development Edition 官方网站
2012-10-31 11:00:14
3377
转载 JAVA 排序实现
8种排序之间的关系: 1.直接插入排序 (1)基本思想:在要排序的一组数中,假设前面(n-1)[n>=2]个数已经是排好顺序的,现在要把第n个数插到前面的有序数中,使得这n个数也是排好顺序的。如此反复循环,直到全部排好顺序。 (2)用java实现 Code highlighting produced by Actipro Code
2012-10-29 19:40:54
475
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人