随笔分类 -  技术原创分享

摘要:首先谈谈什么是反射,这所说的反射是特制在编程语言中的反射,其官方解释如下:程序集包含模块,而模块包含类型,类型又包含成员。反射则提供了封装程序集、模块和类型的对象。您可以使用反射动态地创建类型的实例,将类型绑定到现有对象,或从现有对象中获取类型。然后,可以调用类型的方法或访问其字段和属性。其作用如下:1.加载在程序集清单中列出的模块,以及从此程序集中查找类型并创建该类型的实例。2.了解包含模块的程序集以及模块中的类等。您还可以获取在模块上定义的所有全局方法或其他特定的非全局方法。 3.了解函数的名称、参数、访问修饰符(如public或private)和实现详细信息(如abstract... 阅读全文
posted @ 2012-07-22 21:59 java例子 阅读(315) 评论(0) 推荐(0)
摘要:在并发编程中实用工具类 第一章 关键接口1.BlockingQueue<E>支持两个附加操作的Queue,这两个操作是:检索元素时等待队列变为非空,以及存储元素时等待空间变得可用。2.Callable<V>返回结果并且可能抛出异常的任务。3.CompletionService<V>将生产新的异步任务与使用已完成任务的结果分离开来的服务。4.ConcurrentMap<K,V>提供其他原子putIfAbsent、remove、replace方法的Map。5.Delayed一种混合风格的接口,用来标记那些应该在给定延迟时间之后执行的对象。6.Exec 阅读全文
posted @ 2012-07-22 17:21 java例子 阅读(339) 评论(0) 推荐(0)
摘要:Random类用于生成伪随机数流。使用48位的种子,使用线性同余公式对其进行修改。如果用相同的种子创建两个Random实例,则对每个实例进行相同的方法调用序列,它们将生成并返回相同的数字序列。为了保证属性的实现,为类Random指定了特定的算法。为了Java代码的完全可移植性,Java实现必须让类Random使用此处所示的所有算法。但是允许Random类的子类使用其他算法,只要其符合所有方法的常规协定即可。其有两种初始化方式:Random R = Random ( ) ;Random R= Random (longseed):使用单个long种子创建一个新随机数生成器;其随机数生成方法如下.. 阅读全文
posted @ 2012-07-21 20:04 java例子 阅读(484) 评论(0) 推荐(0)
摘要:在Java中的final关键字和在C++中所使用的const有一定的差别,虽然都是OOP。在这里将简单的说明一下Java中的final关键字。从数据,方法,类这这三个方面来进行final的说明。一.数据1.一个永远不会改变的编译时常量;2.一个在运行时被初始化这一点和C++中的const比较相似,但由于在C++中有指针的存在,所以const在C++中的理解更加复杂,这里最多只有final的对象引用。final的对象引用,使引用恒定不变,一旦引用被初始化指向一个对象,就无法再把它改为指向另一个对象了。还有一点static和final一起修饰的一个数据是占据一块不变的存储空间。二.方法1.锁定.. 阅读全文
posted @ 2012-07-19 23:08 java例子 阅读(239) 评论(0) 推荐(0)
摘要:在Java中finally是用来做什么的呢?可以用这样一句话来概括其功能:在finally中的句子总能运行。看如下两个例子:第一个例子阐述的是一般的的finally的用法,无论try块中的异常是否抛出,必须的语句都可以得到执行。如果catch比较多时,那么就需要在每个catch中的语句里面,添加那段必须的语句就得在每个catch中实现一遍。如果使用finally,那就把必须的语句放到它的模块中,可以实现代码的简洁和干净。classThreeExceptionextendsException{}publicclassFinallyWorks{staticintcount=0;publicst.. 阅读全文
posted @ 2012-07-19 16:17 java例子 阅读(1754) 评论(0) 推荐(0)
摘要:Log4j是Apache的一个开放源代码项目,通过使用Log4j,可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器、UNIXSyslog守护进程等;也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。通过Log4j其他语言接口,您可以在C、C++、.Net、PL/SQL程序中使用Log4j,其语法和用法与在Java程序中一样,使得多语言分布式系统得到一个统一一致的日志组件模块。而且,通过使用各种第三方扩展,您可以很方便.. 阅读全文
posted @ 2012-07-18 21:51 java例子 阅读(169) 评论(0) 推荐(0)
摘要:如果需要在Linux中通过SSH进行远程登录,一般是需要输入密码,但只要将SSH之间的权限打通,便可以实现无密码登录。这对自动化shell脚本的实现有很大的帮助。其实现方案如下:1.本地机器cd ~/.ssh/ssh-keygen -t dsa 执行如下操作后,你会得到id_dsa.pub,也就是所谓的公钥。2.远程机器cd ~/.ssh/将得到的id_dsa.pub文件中的内容复制到authorized_keys中。其中需要注意的是id_dsa.pub是一行文字,如果使用vi查看后复制会导致,在authorized_keys中出现回车符,最好的办法是cat出来在复制到authorize... 阅读全文
posted @ 2012-07-17 23:15 java例子 阅读(148) 评论(0) 推荐(0)
摘要:前言 到现在为止,我接触测试工程师这个职位前前后后已经快有1年了,然后便有了些感触。场景1:A:你现在在做什么?我:测试开发工程师。A: 哦,测试啊!(然后就一脸鄙视)场景2:B:你为什么要去做测试呢?我:可以多学一些。B:那不去做开发啊......... 其实这样的场景对于一个测试人员来说经常面临到,当你开始认真的思考的时候,甚至会发现真的像他们所想的那样了——一个鸡肋而且没有技术含量的职位。于是这便是我为什么要写这篇文章的原因。写写我是如何理解测试工程师这个职位的含义,和一些成长历程。第一章 要理解测试工程师这个职位,那我们可以先从一条简单的软件开发流水线上来观察其所处的位置。一个软件的开 阅读全文
posted @ 2012-07-14 22:12 java例子 阅读(5128) 评论(1) 推荐(0)