上一页 1 ··· 32 33 34 35 36 37 38 39 40 ··· 45 下一页
  2012年5月21日
摘要: 享元模式:运用共享技术有效地支持大量细粒度的对象,主要是通过HashMap对键是否存在的判断。以下是例子: public class FlyweightImpl implements Flyweight{ public void action(int arg) { System.out.println("参数值"+arg); } } public class FlyweightFactory { private static Map flyweights = new HashMap(); public static Flyweight getFlyweight(St... 阅读全文
posted @ 2012-05-21 11:35 lee0oo0 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 装饰模式:动态地给一个对象添加一些额外的职责。就增加功能来说,Decorator模式相比生成子类更为灵活。以下是例子: public class SquarePeg implements Work{ public void insert() { System.out.println("方形粧插入"); } } public class Decorator implements Work{ private Work work; private ArrayList others = new ArrayList(); public Decorator(Work wo... 阅读全文
posted @ 2012-05-21 11:16 lee0oo0 阅读(239) 评论(0) 推荐(0) 编辑
摘要: 一个短信就是一个SmsMessage对象,一个SmsMessage对象通过一个 byte[]来创建,一个byte[]数组就是一个object对象;在实际中有可能一条短信的内容太长,就会分成几条短信,所以此时就对应着一个byte[][] 的二维数组。 //Android中短信封装的形式是pdus Object[] object = (Object[]) intent.getSerializableExtra("pdus"); byte[][] pdus = new byte[object.length][]; for(int i=0;i<pdus.length;i++) 阅读全文
posted @ 2012-05-21 10:56 lee0oo0 阅读(267) 评论(0) 推荐(0) 编辑
  2012年5月19日
摘要: 适配器模式:将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那个类可以一起工作。以下是例子: //定义接口 public interface ITarget { public void run(); public void fly(); } //其中的方法必须与接口中的其中一个方法的方法名相同 public class Sources { public void run(){ System.out.println("run"); } } //继承与实现,由于继承的类中有个方法的名字与接口相同,所以只要重写一个方法即可 pu 阅读全文
posted @ 2012-05-19 16:44 lee0oo0 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 外观模式:为子系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层接口,这个接口使得这个子系统更加容易使用。以下是例子: public class Facade { ServiceA sa; ServiceB sb; public Facade(){ sa = new ServiceAImpl(); sb = new ServiceBImpl(); } public void methodA(){ sa.methodA(); sb.methodB(); } } //测试类 public class Test {... 阅读全文
posted @ 2012-05-19 15:55 lee0oo0 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 建造者模式:将一个复杂对象的构成与它的表示分离,使得同样的构建过程可以创建不同的表示。以下是例子://抽象各种部件interface VehicleBuilder {void BuildFrame();void BuildEngine();void BuildWheels();void BuildDoors();void Builder();}//根据实际实现抽象部件类public class CarBuilder implements VehicleBuilder {Shop shop = new Shop();public void BuildFrame() {shop.hashput(& 阅读全文
posted @ 2012-05-19 12:26 lee0oo0 阅读(223) 评论(0) 推荐(0) 编辑
  2012年5月18日
摘要: 模板模式:定义一个操作中的算法的骨架,然后将一些步骤延迟到子类中。TemplateMethod使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。以下是例 子: //把print延后到子类实现 public abstract class Template { public abstract void print(); public void update(){ System.out.println("开始打印"); for(int i=0;i<10;i++){ print(); } } } //实现print public cla... 阅读全文
posted @ 2012-05-18 23:57 lee0oo0 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 单例模式,固然思意就是只能够创建一个实例,一下是两种单例模式的例子: 第一种:由于构造方法,与创建实例的对象都设置为private,表明外部不能创建,只能通过getInstance()方法得到 public class Singleton1 { private Singleton1(){} private static Singleton1 s1 = new Singleton1(); public Singleton1 getInstance(){ return s1; } } 第二种:这一方法创建实例是在方法当中创建,首先判断这是实例是否为空 class Singleton1... 阅读全文
posted @ 2012-05-18 22:45 lee0oo0 阅读(203) 评论(1) 推荐(0) 编辑
摘要: 工厂模式:创建实例是在一个工厂类当中创建,例子如下; 1. 首先是有一个接口 public interface Car { public void model(); } 2. 创建一个类实现这个接口 public class CarA implements Car{ public void model() { System.out.println("这是一辆高级四轮车"); } } 3. 创建另外一个类实现这个接口 public class CarB implements Car{ public void model() { System.out.println(" 阅读全文
posted @ 2012-05-18 22:01 lee0oo0 阅读(388) 评论(0) 推荐(0) 编辑
摘要: 必须在AndroidManifest中设置相应的权限:android:name="android.permission.RECORD_AUDIO" 1. 首先判定是否存在SD卡,并得到相应的路径 /* 检测是否存在SD卡 */ if (Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED)) { /* 得到SD卡得路径 */ mRecAudioPath = Environment.getExternalStorageDirectory(); /* ... 阅读全文
posted @ 2012-05-18 20:00 lee0oo0 阅读(9386) 评论(0) 推荐(1) 编辑
上一页 1 ··· 32 33 34 35 36 37 38 39 40 ··· 45 下一页