摘要: 一、public 同一个package 1.本类内部 2.子类 3.其它类通过类对像访问对像成员 不同package之间 1.子类 2.其它类通过类对像访问对像成员 二、protected 同一个package 1.本类内部 2.子类 3.其它类通过类对像访问对像成员 不同package之间 1.子 阅读全文
posted @ 2017-10-17 00:04 bateman6988 阅读(535) 评论(0) 推荐(1) 编辑
摘要: 一、概念 将一个复杂对像的构建与它的表示分离,使得同样的构建过程创建不同的表示,又叫建造模式。 生成器模式的重心在于分离构建算法和具体的构造实现,从而使得构建算法可以重用。采用不同的构建实现,产生不同的产品。所以生成器模式都会存在以下两个部分: a.整体构建算法 b.部件的构造和产品的装配 二、模式 阅读全文
posted @ 2017-10-11 23:21 bateman6988 阅读(302) 评论(0) 推荐(0) 编辑
摘要: 一、概念 保证一个类仅有一个实例,并提供一个访问他的全局访问点。 二、模式动机 对一些全局性资原或者配置进行统一管理,以提供一个唯一的访问点,并减少内存的使用。 三、模式的结构 单例模式有如下特点: 1.单例类只能有一个实例 2.单例类必须自已创建自已的实例 3.单例类必须提一个访问点,以便向外部提 阅读全文
posted @ 2017-09-24 23:02 bateman6988 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 1.非静态成员变量 当成员变量为非静态成员变量且对当前类进行实例化时,将会产生死循环 例子: 结果: Exception in thread "main" java.lang.StackOverflowError at com.ConstructorCls.<init>(ConstructorCls 阅读全文
posted @ 2017-09-21 23:37 bateman6988 阅读(194) 评论(0) 推荐(0) 编辑
摘要: 如下面例子: 运行结果如下: 10 10 从上面的两个结果可以看出 不论是a 对像还是b 对像,它所对的B类中都没有getx()方法,我们通过b对像所访问的getx方法都是运行的从父类继承过来的方法,当运行父类的方法时,返回的当然是父类中的x 。 再看下面的例子: 运行结果为: 20 20 我们通过 阅读全文
posted @ 2017-09-21 00:09 bateman6988 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 一、如果子类与父类中有一个相同名称的成员变量,那么子类的成员变量会不会覆盖父类的成员变量?我们看下在的例子: 运行C类的main方法的结果为: 102010 通过结果我们可以看出子类是不会覆盖父类的成员变量,我们eclipse的调试工具也能很清晰的看出在对像a中同时存在两个x的成员变量(其中一个是父 阅读全文
posted @ 2017-09-20 23:45 bateman6988 阅读(859) 评论(0) 推荐(0) 编辑
摘要: 一。概念 提供一个创建一系列相关或相互依赖对像的接口,而无需指定它们具体的类。 二。模式动机 这一系列对像之间是相互依赖的,相当于一个产品族 三。模式的结构 通过上图我们可以清楚的看到抽像工厂模式包括以下4个角色: 1.抽像工厂角色(AbstractFactory):抽像工厂模式的核心,与具体的商业 阅读全文
posted @ 2017-09-06 23:56 bateman6988 阅读(255) 评论(0) 推荐(0) 编辑
摘要: 一。概念 工厂方法模式是类的创建模式,又叫虚拟构造子模式(virtual constructor) 或者多态性工厂模式。 二。模式动机 定义一个抽像的工厂,将产品的具体创建工作推迟到抽像工厂的具体子类中,有些产品的创建非常复杂,试想如果将所有具体产品的创建工作都像简单工厂一样放到一个静态工厂方法中, 阅读全文
posted @ 2017-09-03 00:05 bateman6988 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 简单工厂模式又叫静态工厂方法模式,是有一个工厂对像决定创建出哪一种产品类的实例。 简单工厂模式的简略类图如下: 其示意性代码如下: 1 public interface Product{} 从上面的类图可以看出,简单工厂模式涉及到三个角色,工厂类角色,抽像产品角色和具体产品角色 A.工厂类角色:是该 阅读全文
posted @ 2017-08-24 23:34 bateman6988 阅读(121) 评论(0) 推荐(0) 编辑