Author Archives: sunny

Java远程方法调用RMI简单介绍

RMI介绍 RMI(Remote Method Invocation,远程方法调用)是用Java在JDK1.1中实现的。经过多个JDK版本迭代,目前RMI的实现方式跟最开始底层实现还是有很大差别的。远程方法调用允许运行在一个Java虚拟机的对象调用运行在另一个Java虚拟机上的对象的方法。 这两个虚拟机可以是运行在相同计算机上的不同进程中,也可以是运行在网络上的不同计算机中。 RMI使用JRMP( […]

阅读更多 »

Java设计模式-委托delegate模式

委托delegate模式虽然并没有被归类在23中常用的设计模式之中,但是在开发中确实也是比较常用的软件设计模式之一。在Android的support包中AppCompatActivity就可以看到delegate的身影;iOS终端开发使用delegate更是随处可见;而在J2EE开发中业务委托模式在已经作为了官方的一种设计模式。 委托模式介绍 下面是维基百科中对委托模式的定义。 委托模式是软件设计 […]

阅读更多 »

Java设计模式-适配器模式

适配器模式是23种设计模式中比较常用的模式之一,在创建型模式、结构性模式和行为型模式分类中,适配器模式归类为结构型模式。 将一个类的接口转换成客户希望的另外一个接口。 Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 适配器结构和使用场景 使用场景 系统需要使用现有的类,而这些类的接口不符合系统的需要。 想要建立一个可以重复使用的类,用于与一些彼此之间没有太大关联的一些 […]

阅读更多 »

Java设计模式-桥接模式

桥接模式也是23种设计模式中比较常用的模式之一,在创建型模式、结构性模式和行为型模式分类中,桥接模式归类为结构型模式。 在正式介绍桥接模式之前,先简单的看一个例子,通过例子我们再介绍引入桥接模式。 假设要设计一个跨平台的图片浏览系统,该系统可以正常显示PNG、JPG、GIF等不同格式图片,而且在不同的操作系统上面也可以正常运行。系统会首先将文件解析为不同的像素矩阵(Matrix),然后将像素矩阵显 […]

阅读更多 »

Java设计模式-责任链模式

责任链模式又称为职责链模式,在23种设计模式中归类为行为型模式。行为型模式可以分为类行为型模式和对象行为型模式。 类行为型模式使用继承关系在几个类之间分配行为,类行为型模式主要通过多态等方式来分配父类与子类的职责。 对象行为型模式则使用对象的聚合关联关系来分配行为,对象行为型模式主要是通过对象复合等方式来分配两个或多个类的职责。根据“合成复用原则”,系统中要尽量使用组合关系来取代继承关系,因此大部 […]

阅读更多 »

Java设计模式-单例模式

单例模式也是23种设计模式中最常用的模式之一,在创建型模式、结构性模式和行为型模式分类中,单例模式归类为创建型模式。 单例模式确保一个类只有一个实例,并提供一个全局访问点。这种方式可以防止创建多个对象消耗过多资源,或者某种类型的对象有且只能有一个。例如创建一个对象消耗过多资源,访问IO和数据库或者进行网络传输数据等等,这时候就应该使用单例模式。 从最开始接触单例模式,包括在大多数书籍中的介绍中,懒 […]

阅读更多 »

Java设计模式-工厂模式

工厂模式也是23种设计模式中比较常用的模式之一,而这23种设计模式的又可以分为:创建型模式、结构性模式和行为型模式,工厂模式归类为创建型模式。 一般情况下工厂模式又可以细分简单工厂模式、工厂方法模式以及抽象工厂模式3种,简单工厂模式严格来说并不是工厂模式的一种,而是一种编程习惯。在本文中为了对比理解所以将也简单工厂作为了一种模式 简单工厂模式 简单工厂(Simple Factory)模式是由一个工 […]

阅读更多 »

Android内存溢出OOM:常见内存泄漏

在上一篇文章中我们对Android中内存有了一个基本的了解,在本文继续介绍有关内存溢出的相关点。当内存泄漏超过一定的界限,必然会引起内存溢出,有些内存泄漏在开发中是比较常见的,接下来通过介绍几种常见额内存泄漏情形,以便在开发过程中采取必要的措施以此防止内存泄漏。 如下是Android开发者在开发中比较常见的几种内存泄漏,并给出了相对应的防止内存泄漏的解决方式。 单例模式引起的内存泄漏 单例模式可以 […]

阅读更多 »

Android内存溢出OOM:简单介绍

前言 在日常的Android开发中,每个开发者或多或少都会遇到过OutOfMemoryError这样崩溃信息。如果工程稍微大一些,在monkey测试的崩溃日志也是比较常见的一种。如下是比较常见的一些报错信息:

相对于StackOverflowError而言OutOfMemoryError则是比较常见的一种内存异常。在《深入理解Jav […]

阅读更多 »
1 2 3 11