91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java工廠設計模式的代碼怎么寫

發布時間:2022-03-04 17:19:50 來源:億速云 閱讀:172 作者:iii 欄目:web開發

這篇“Java工廠設計模式的代碼怎么寫”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Java工廠設計模式的代碼怎么寫”文章吧。

  實現方法

  我們將創建一個Shape接口和實現Shape接口的具體類。一個工廠類ShapeFactory會在下一步中定義。

  FactoryPatternDemo這是一個演示類,將使用ShapeFactory來獲取一個Shape對象。它會將信息(CIRCLE/RECTANGLE/SQUARE)傳遞給ShapeFactory以獲取所需的對象類型。

  實現工廠模式的結構如下圖所示-

  java-61.jpg

  第1步

  創建一個接口-

  Shape.java

  publicinterfaceShape{

  voiddraw();

  }

  第2步

  創建實現相同接口的具體類。如下所示幾個類-

  Rectangle.java

  publicclassRectangleimplementsShape{

  @Override

  publicvoiddraw(){

  System.out.println("InsideRectangle::draw()method.");

  }

  }

  Square.java

  publicclassSquareimplementsShape{

  @Override

  publicvoiddraw(){

  System.out.println("InsideSquare::draw()method.");

  }

  }

  Circle.java

  publicclassCircleimplementsShape{

  @Override

  publicvoiddraw(){

  System.out.println("InsideCircle::draw()method.");

  }

  }

  第3步

  創建工廠根據給定的信息生成具體類的對象。

  ShapeFactory.java

  publicclassShapeFactory{

  //usegetShapemethodtogetobjectoftypeshape

  publicShapegetShape(StringshapeType){

  if(shapeType==null){

  returnnull;

  }

  if(shapeType.equalsIgnoreCase("CIRCLE")){

  returnnewCircle();

  }elseif(shapeType.equalsIgnoreCase("RECTANGLE")){

  returnnewRectangle();

  }elseif(shapeType.equalsIgnoreCase("SQUARE")){

  returnnewSquare();

  }

  returnnull;

  }

  }

  第4步

  使用工廠通過傳遞類型等信息來獲取具體類的對象。

  FactoryPatternDemo.java

  publicclassFactoryPatternDemo{

  publicstaticvoidmain(String[]args){

  ShapeFactoryshapeFactory=newShapeFactory();

  //getanobjectofCircleandcallitsdrawmethod.

  Shapeshape1=shapeFactory.getShape("CIRCLE");

  //calldrawmethodofCircle

  shape1.draw();

  //getanobjectofRectangleandcallitsdrawmethod.

  Shapeshape2=shapeFactory.getShape("RECTANGLE");

  //calldrawmethodofRectangle

  shape2.draw();

  //getanobjectofSquareandcallitsdrawmethod.

  Shapeshape3=shapeFactory.getShape("SQUARE");

  //calldrawmethodofcircle

  shape3.draw();

  }

  }

  第5步

  驗證輸出結果如下-

  InsideCircle::draw()method.

  InsideRectangle::draw()method.

  InsideSquare::draw()method.

Java工廠設計模式的代碼怎么寫

以上就是關于“Java工廠設計模式的代碼怎么寫”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

襄汾县| 闵行区| 扎鲁特旗| 惠东县| 黔江区| 临猗县| 延吉市| 鹤峰县| 微山县| 安徽省| 大洼县| 太白县| 桂东县| 托里县| 兴宁市| 普兰县| 库伦旗| 青田县| 泸定县| 砚山县| 高陵县| 新乐市| 徐州市| 池州市| 顺昌县| 阿坝县| 武定县| 富民县| 乐业县| 三明市| 永康市| 祁连县| 八宿县| 韶山市| 土默特左旗| 湘西| 天全县| 高邮市| 葫芦岛市| 德钦县| 霞浦县|