Java基础
文章平均质量分 64
iteye_19896
这个作者很懒,什么都没留下…
展开
-
简单工厂模式
面向对象的程序设计就是通过封装、继承、多态把程序的耦合度降低。用设计模式是的程序设计更加灵活,容易修改,并且易于复用。 下面就以一个加减乘除的例子在展现简单工厂模式的应用。 操作类 operation: package com.kunl.simplefactory; public abstract class Operation { private double numberA =...原创 2011-05-28 14:00:47 · 57 阅读 · 0 评论 -
工厂方法模式
简单工厂模式和工厂方法模式的区别在哪里呢? 简单工厂模式的最大优点在于工厂类包含了必要的逻辑判断,根据客户端的选择条件动态实例化相关的类,对于客户端来说,去除了与具体产品的依赖。 工厂方法模式,定义一个用于创建对象的接口,让子类决定实例化那一个类。工厂方法使一个类的实例化延迟到子类。 下面就以计算器为例显示工厂方法模式各个类之间的关系 工厂方法模式实现时,客户端需要决...原创 2012-06-16 11:21:27 · 63 阅读 · 0 评论 -
团队开发统一eclipse格式
在团队协作开发的时候,通常各人的编码风格不同,导致写出来的代码格式不统一,在eclipse里中开发之前通常需要将每个人的编码格式统一一下风格,有助于代码格式化审查。 ...原创 2012-09-04 10:37:41 · 119 阅读 · 0 评论 -
使用bouncycastle进行加密
BouncyCastle是一个开源的加解密解决方案,主页在http://www.bouncycastle.org/,下面写一个工具类对String加密和解密 /** * use bouncycastle to AES encrypt */ public class AESUtils { private static final AESUtils instance = new AES...原创 2011-11-25 09:46:02 · 1315 阅读 · 0 评论 -
在android中使用netty框架通信
最近在做一个项目,基于android版本的一个物联网应用,涉及到了关于socket通信方面的内容,在google上搜了一下,发现Netty框架可以快速的实现socket通信。而且使用起来十分方便。 1.建立socket连接 public class CmdClient { private ClientBootstrap bootstrap; private ChannelFut...原创 2012-02-08 10:48:46 · 1010 阅读 · 0 评论 -
Java nio 客户端连接Server
在做通信系统的开发过程中,经常需要使用Socket通信。java新的io机制给我提供了一个很好的异步socket通信方式,这段时间用java写了一个客户端用来连接server。发现运行效率还比较让人满意。下面是我实现的部分功能。 连接服务器的socket,多线程启动。如果连接失败就重连。 public class CommonSocket extends Thread { private ...原创 2011-03-23 11:27:45 · 202 阅读 · 0 评论 -
Java 通信中常用到的数据转码
在写java通信的时候,经常需要进行数据的解包和组包工作,我们可以将常用的数据进行转码,方便工作的开发, 现将代买罗列出来,帮助大家在开发的过程当中可以使用 public class DataFormatConvertUtil { /** * Static method, a long type data into a byte array of specified length...原创 2011-03-14 09:42:57 · 293 阅读 · 0 评论 -
用一个for循环实现99乘法表
前两天去武汉融众科技去面试,有一道笔试题是用一个for循环实现99乘法表,觉得这个题目蛮有意思的,先将我实现的方法发给大家 public void nineMulTable(){ for(int i=1,j=1;j<=9;i++){ System.out.print(i+"x"+j+"="+i*j+" "); if(i==j){ i = 0; j...原创 2011-08-18 09:00:37 · 541 阅读 · 0 评论 -
Java nio Server实现
Java NIO 提供了反应堆模式非阻塞的Socket通信,代码很简单 public class TcpServer implements Runnable { private ServerSocketChannel socketChannel; private Selector selector; private int activeSockets; private in...原创 2011-06-11 16:48:45 · 124 阅读 · 0 评论 -
在java switch中使用String作为分支条件
在java中明确规定switch里面只允许使用int,char,和enum类型,但是我们实际编程过程中往往需要通过String来进行比较。那么应该怎么做呢?其实很简单,我们只需要将enum类型做一个小小的封装就可以达到我们的目的 Animal enum类: public enum Animal { dog,cat,bear; public static Animal getAni...原创 2011-06-02 11:32:33 · 70 阅读 · 0 评论 -
代理模式
在我们的日常生活中通常需要通过第三方的介绍来办理相关的业务,比如租房子会去找房屋中介、找对象去婚姻介绍所。今天给大家介绍的这个设计模式就是关于这样的情况,叫做代理模式。 代理模式结构图如下: Subject类,定义RealSubject和Proxy的公共接口: package com.kunl.proxy; /** * @author fokman * @...原创 2011-05-31 22:38:56 · 59 阅读 · 0 评论 -
装饰模式
装饰模式就像我们穿衣服一样,先穿什么、然后在穿什么。它的意思就是说动态的给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更加灵活。 装饰模式的结构图如下: Component类: package com.kunl.decorator; /** * @author fokman * @version 1.0 * @created 29-五月-2011 22...原创 2011-05-30 21:20:08 · 72 阅读 · 0 评论 -
策略模式
策略模式:定义了算法家族,分别封装起来,让他们时间可以相互替换,此模式让算法的变化,不会影响到使用算法的客户。 策略模式的结构如如下: 抽象算法类实现: package com.kunl.strategy; /** * @author fokman * @version 1.0 * @created 29-五月-2011 22:18:45 */ public ...原创 2011-05-29 22:36:03 · 109 阅读 · 0 评论 -
java枚举存入map
在jdk1.5中java引入了枚举类型,今天我们就将枚举类型的数据存入到map中,代码如下: public enum IdeasCMD { RESERVED(0), PING(1), PING_ACK(2), KEY_EXCHANGE(3), KEY_EXCHANGE_ACK(4), CONNECT(5), CONNECT_ACK(6), DISCONNECT(7), KEEP_...原创 2012-06-27 12:05:19 · 2839 阅读 · 0 评论