当前所在位置:珠峰网资料 >> 计算机 >> 计算机等级考试 >> 正文
关于Java缺乏多继承机制的探讨
发布时间:2010/6/7 11:07:45 来源:城市学习网 编辑:ziteng
  最近笔者在软件产品研发过程中遇到一问题,解决起来相当的棘手。产品架构在规划阶段定位分布式多层架构,第一阶段采用B/S架构,同时研发出全部的服务端组件(Servlet和Java beans),在组件成熟并且B/S架构产品成熟的情况下,再研发C/S架构产品,这样一来,风险就大大降低了。
  在B/S架构产品研发的时候,使用了Struts框架,其中的两大基础对象是ActionForm和Action。自定义的ActionForm都要继承自org.apache.struts.action.ActionForm,例如:
  Public class MyClassForm extends org.apache.struts.action.ActionForm {
  Private String a;
  Private String b;
  ……
  //getter 和 setter省略
  }
  这在B/S产品研发阶段没有任何问题,但是到了C/S产品研发阶段,问题就来了,客户端提交给服务器的数据不再是ActionForm,而是只包含字段的纯JavaBean,代码如下:
  Public class MyClass {
  Private String a;
  Private String b;
  ……
  //getter 和 setter省略
  }
  于是乎,在原来的B/S架构研发成果上,对于C/S架构产品的研发,都多了这个纯JavaBean的封装,如果业务逻辑发生变化,要对MyClassForm和MyClass都进行修改。
  如果Java能支持多继承,那么就很省事情了。即自定义的MyClassForm能同时从org.apache.struts.action.ActionForm和MyClass继承:
  Public class MyClassForm extends MyClass,org.apache.struts.action.ActionForm {
  }
  可惜啊,JDK不支持多继承。
广告合作:400-664-0084 全国热线:400-664-0084
Copyright 2010 - 2017 www.my8848.com 珠峰网 粤ICP备15066211号
珠峰网 版权所有 All Rights Reserved