您當前位置: 唯學網 » IT認證培訓 » IT認證培訓教育新聞 »

關于Java缺乏多繼承機制的探討

關于Java缺乏多繼承機制的探討

唯學網 • 教育培訓

2016-10-10 15:05

維修

唯學網 • 中國教育電子商務平臺

加入收藏

最近筆者在軟件產品研發過程中遇到一問題,解決起來相當的棘手。產品架構在規劃階段定位分布式多層架構,第一階段采用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不支持多繼承。

以上內容是關于關于Java缺乏多繼承機制的探討的介紹,要想了解更多相關信息、教育培訓內容,請隨時關注唯學網,小編會第一時間為大家更新、跟進最新信息。

0% (0)
0% (10)
已有條評論