JavaScript设计模式---0003工厂模式----抽象工
作者:
八月飞花 | 来源:发表于
2020-04-29 23:39 被阅读0次
抽象工厂模式
在Java中不能完全实现抽象工厂模式,因为没办法通过父类调用子类,
但是可以变通,抽象工厂就是只定义实现的基本方法,不定义具体的实现
具体实现由继承的子类进行实现
假设需要实现一个创建ajax的工厂
实现抽象工厂
1.实现基本的方法,类似于Java的 接口
function AJAXHTTP=function(){
};
AJAXHTTP.prototype.createAjax=function(){
throw Error("不能直接调用此接口函数,这个方法不可以被实例化");
};
实现自己的工厂
function XHRHTTP=function(){
AJAXHTTP.call(this);//继承抽象工厂
};
//将原型挂载到AJAX的实例对象上
XHRAJAX.prototype=new AJAXHTTP();
XHRAJAX.prototype.constructor=XHRHTTP;//改变构造函数
//实现继承过来的函数
XHRAJAX.prototype.createAjax=function(){
var XHRAjax=null;
if(window.XMLHttpRequest){
XHRAjax=new XMLHttpRequest;
}
return XHRAjax;
}
本文标题:JavaScript设计模式---0003工厂模式----抽象工
本文链接:https://www.haomeiwen.com/subject/uuzowhtx.html
网友评论