Object Orient Programming
Java面向对象编程
三种权限设计方案的归纳和比较
摘要: 权限设计是很多系统重要的组成部分,主要用于控制功能和流程,本文将几种常见的权限设计方案(权限系统的名都是自己起的)的基本设计写出来,其中不恰当处还请大家指出,我们来讨论一下.
阅读全文
posted @
2008-04-10 10:20 如坐春风 阅读(1845) |
评论 (10) 编辑
将阿拉伯数字转大写汉字程序的类
摘要: 转化效果:
阿拉伯数字等于:0 大写汉字等于:零整
阿拉伯数字等于:3.14159 大写汉字等于:叁点壹肆壹伍玖
阿拉伯数字等于:101.3 大写汉字等于:壹佰零壹点叁
阿拉伯数字等于:10203040506070809 大写汉字等于:壹萬兆零贰佰零叁兆零肆佰零伍億零陆佰零柒萬零捌佰零玖整
阿拉伯数字等于:7897645 大写汉字等于:柒佰捌拾玖萬柒仟陆佰肆拾伍整
阿拉伯数字等于:500000001000000 大写汉字等于:伍佰兆零壹佰萬整
阿拉伯数字等于:2435685 大写汉字等于:贰佰肆拾叁萬伍仟陆佰捌拾伍整
阿拉伯数字等于:5345438976 大写汉字等于:伍拾叁億肆仟伍佰肆拾叁萬捌仟玖佰柒拾陆整
阅读全文
posted @
2008-03-25 21:15 如坐春风 阅读(1075) |
评论 (1) 编辑
设计构建一个软件程序的基本步骤探讨
摘要: 软件的核心任务不外乎是收集和整理数据,然后以用户需要的形式表现给他们而已,此外还有数据的存储,数据的传输等外围任务。
数据的收集,整理,表现,存储和传输就是软件的主要任务,它们也是程序员的主要工作内容,也是程序员编写代码的最终目的。
那么该如何编写代码让软件完成它的主要任务呢?编写代码的过程是否有规律可循?编写代码需要注意那些方面的问题?本人想就这些问题罗列自己一些粗浅的看法,并大家进行一些探讨。
阅读全文
posted @
2008-01-26 21:19 如坐春风 阅读(1296) |
评论 (10) 编辑
使用泛型类简化服务层(Service)类的设计
摘要: 领域层类可以理解为程序运行时数据流的功能单位,而服务层类是为领域层类提供服务的,常见的服务有增删改查等操作,在没有泛型之前,我们只能采用一个服务类为一个领域类提供服务的方案,如果说服务的性质类似,如都是增删改查等,则代码的功能重复性很高,维护起来也很麻烦.如果采用了泛型类,我们就可以把性质相似的服务类归纳成一个,很大程度上能简化编码.
阅读全文
posted @
2007-12-28 16:47 如坐春风 阅读(931) |
评论 (2) 编辑
一个解析文本中的信息并向对象赋值过程的思考.
摘要: 一个解析文本中的信息并向对象赋值过程的思考,比较浅显.
阅读全文
posted @
2007-12-07 16:35 如坐春风 阅读(181) |
评论 (0) 编辑
私有的成员能被子类继承吗?
摘要: private的成员变量能被子类继承吗?回答是父类的所有成员变量包括私有成员变量都会被子类继承,private只是把可见性限制在改类内部的方法中而已,子类仍然可以通过父类的成员函数来访问不可见的从父类继承下来的私有成员.
这个机制对于复杂的类体系中保护父类不被滥用很有好处.
阅读全文
posted @
2007-12-04 20:42 如坐春风 阅读(1020) |
评论 (5) 编辑
目录树的建立,遍历及批量删除
摘要: 本文描述了目录树的建立,遍历及批量删除的整个过程.
阅读全文
posted @
2007-12-03 20:03 如坐春风 阅读(199) |
评论 (0) 编辑
读写锁的OO分析
摘要: 我们有时会遇到对同一个内存区域如数组或者链表进行多线程读写的情况,一般来说有以下几种处理方式:
1.不加任何限制,多见于读取写入都很快的情况,但有时也会出现问题.
2.对读写函数都加以同步锁,比如使用singleton模式,这下问题是没了,但效率也下去了,比如说两个读取线程不是非要排队进入不可.
3.读写锁,安全和效率都得到了解决,特别合适读线程多于写线程的情况.也就是下面将要展现的模式.
读写锁的本意是分别对读写状态进行互斥区分,有互斥时才加锁,否则放行.互斥的情况有:
1.读写互斥.
2.写写互斥.
不互斥的情况是:读读,这种情况不该加以限制.
我们只要让锁对象知道当前读写状态就可以了,再根据情况进行锁定和解锁,然后再分情况进行锁定.请看代码
阅读全文
posted @
2007-10-21 11:42 如坐春风 阅读(760) |
评论 (2) 编辑
工人自动获取任务的OO分析
摘要: 这篇文章是"调度员,工人及任务的OO分析过程"的续篇.
上次的情况是由调度员主动分配任务,但有些情况下需要工人自动取得任务而不是由调度员分配,这时需要对线程进行通知,使用的主要方法就是对象的wait(),notify(),notifyAll()三个函数,它们都必须从同步方法(synchronized method)中调用.
阅读全文
posted @
2007-10-20 09:53 如坐春风 阅读(564) |
评论 (0) 编辑
调度员,工人及任务的OO分析过程.
摘要: 日常编码中,我们常需要为各种业务进行建模,为工厂中的任务调度建模就很有意思的,它的主要流程是基本是这样:
1.调度员将工件图纸交付给工人,这是任务的下达.
2.工人工作,完成工件,这是任务的进行过程.
3.工件完成后,工人将图纸和工件返还给调度员,或者到了确定的时间后由调度员去取.这是任务的完成.
4.重复上述三个步骤.
在这个流程中,还存在一些特征:
1.工人可以有多项任务,但他在一个时间只能做一个活,具体做那个由任务的优先级确定.
2.任务完成后要让调度员知道,现实中是工人来找调度员或者调度员找工人来实现的.
从上述情况分析,我们需要任务,工人,调度员三个类来完成建模,另外为了方便任务的存储和管理,还需要一个任务串类来辅助.
阅读全文
posted @
2007-10-05 12:52 如坐春风 阅读(606) |
评论 (0) 编辑
如何作出一个完善的分析复杂嵌套SQL语句的程序? (附上自己做的分析嵌套SQL语句的两个类)
摘要: 下面是我在自己的一个项目中用来分析嵌套SQL语句的两个类,它们的基本做法就是靠括号来区别嵌套语句的层,然后用类似进栈的方法将复杂SQL分离成一个个小的简单SQL语句,最好再用出栈的方法将整个SQL整形好.有完善的括号存在的SQL语句整形效果还是可以的,但是整个过程严重依赖括号,而SQL语句中括号不是必须的,这时整形效果就差了,如何作出一个完善的分析复杂嵌套SQL语句的程序,好像不容易,我一时还没有头绪,希望大家能给我提个醒.
阅读全文
posted @
2007-09-17 13:12 如坐春风 阅读(421) |
评论 (4) 编辑
用分治法解决级联对象与相应XML之间的互相转化问题
摘要: 级联对象与相应XML之间的互相转化是在制作Web Service或者JMS程序时常遇到的问题,此文讨论了如何简化级联对象和相应XML的相互转化程序的方法.
阅读全文
posted @
2007-09-17 00:25 如坐春风 阅读(611) |
评论 (4) 编辑
Full Object Orient Programming Archive