Java语言简单工厂成立性情势介绍[Java编程]
本文“Java语言简单工厂成立性情势介绍[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
研究和利用创建性情势的必要性
面向对象的计划的目的之一,就是把责任举行划分,以分配给差别的对象.我们举荐这种划分责任的作法, 是因为它和封装(Encapsulation)和分配(Delegation)的精神是相符合的.创建性情势把对象的创建历程封装起来,使得创建实例的责任与利用实例的责任分割开, 并由专门的模块分管实例的创建,而系统在宏观上不再依靠于对象创建历程的细节.
全部面向对象的语言都有固定的创建对象的办法.Java语的办法就是利用new操作符.比方
StringBuffer s = new StringBuffer(1000);
就创建了一个对象s,其范例是StringBuffer.利用new操作符的弊端是事前必须明确知道要实例化的类是什么, 并且实例化的责任常常与利用实例的责任不加辨别.利用创建性情势将类实例化,首先没必要事前知道每次是要实例化哪一个类, 其次把实例化的责任与利用实例的责任分割开来,可以补偿直接利用new操作符的弊端.
而工厂情势就是专门负责将大量有共同接口的类实例化,并且没必要事前知道每次是要实例化哪一个类的情势.
工厂情势有几种形状
工厂情势有以下几种形状:
简单工厂(Simple Factory)情势
工厂办法(Factory Method)情势,又称多形性工厂(Polymorphic Factory)情势
抽象工厂(Abstract Factory)情势,又称工具箱(Kit或Toolkit)情势
介绍简单工厂情势
比方说,你有一个描写你的后花园的系统,在你的后花园里有各种的花,但还没有生果.你目前要往你的系统里引进一些新的类,用来描写下列的生果:
葡萄 Grapes
草莓 Strawberry
萍果 Apple
花和生果最大的差别,就是生果终究是可以采摘食用的.那么,很自然的作法就是成立一个各种生果都实用的接口,这样一来这些生果类作为类似的数据范例便可以和你的系统的别的部份,如各种的花有所差别,易于辨别.
图1. Grape, Strawberry和Apple是拥有共同接口FruitIF的类.
package com.javapatterns.simplefactory;
public interface FruitIF {
void grow();
void harvest();
void plant();
String color = null;
String name = null;
}
以上是“Java语言简单工厂成立性情势介绍[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |