1. 程式人生 > >重構中的名詞解釋--->將繼承替換為委託

重構中的名詞解釋--->將繼承替換為委託

1.前提

父類和子類需要進一步解耦合,或者可能一個新的類需要某個類多個已有方法時考慮使用

2.運用

存在如下父類

class animal {
      public void eat(Object element){
          element.del();
      }

      public Object say(language l){
         l.say();
      }
}

有下子類或新類需要animal類方法

class people extend animal {
      public void eat(Object element){
          super
(element); } public Object say(language l){ super(l); } public Object sosial(People p){ addRelation(p); } }

此時應該將上方形式替換為以下形式

class people {
      private animal a = new animal();
      public void eat(Object element){
          a.eat(element);          
      }

      public
Object say(language l){ a.say(l); } public Object sosial(People p){ addRelation(p); } }

相關推薦

重構名詞解釋--->繼承替換委託

1.前提 父類和子類需要進一步解耦合,或者可能一個新的類需要某個類多個已有方法時考慮使用 2.運用 存在如下父類 class animal { public void eat(O

javascript字串的多個空格替換一個空格的正則例項

原文章路徑:https://www.jb51.net/article/101324.html 本部落格主要實現用javascript將字串中的多個空格替換為一個空格的正則例項,需要的朋友可以參考下 javascript將字串中的多個空格縮減為一個空格程式碼例項: 在實際應用中可能有

遍歷java物件的私有屬性,null替換“”

package com.yu.killnull; import java.lang.reflect.Field; import java.lang.reflect.Method; /** * Created with Yang Xiaolei * Date: 2018

字串的佔位符"%s"替換引數列表的元素

題目描述:將字串A中的佔位符"%s"替換為引數列表arg中的元素,引數列表中元素多的追加到字串的後面,保證引數列表中的元素個數大於等於字串中的佔位符個數。輸入:“A%sC%s”{'B','D','E'}

python,如何字串轉換數字(數字轉換整型),字串的10轉換整型的10,10.5轉換10

說明:   在實際的應用過程中,有的時候可能會遇到字串的10,需要將字串的10轉換為數字的10   在此記錄下,通過int函式轉換的過程。 操作過程: 1.將字串轉換為整型的10 >>> str1 = "10" #將一個字串的10賦給變數str1 >&g

ideaTerminal替換git bash.exe

1.IDEA Terminal替換成Git Bash(預設為cmd.exe) 在IDEA中,開啟settings,設定相應的bash路徑 settings–>Tools–>Terminal–>Shell path:%GIT_HOME%\bin\bash.e

android圖片載入庫Glide4使用教程(專案如何快速Glide3替換成Glide4)

我想大多數人在自己的專案中還是使用Glide3.7.1這個版本吧!不過Glide版本現在已經到4.4.0了! 當我們把Glide3更換成Glide4,會發現大部分地方都報錯了,那麼該怎樣快速替換Glide3為Glide4呢? 下面我們一起來看看怎樣實現Gli

組合語言學習之路(7)------------輸入10進位制數,其轉換2進位制數,存放在ax,再其轉換ASCII碼並輸出

data segment        inf1 db "please input a number(1-361):$"        ibuf db 7,0,6 dup(0)        obuf db 6 dup(0)        data ends        c

oracle資料庫使用sqlclob轉化字串

在oracle使用過程中,通常使用plsql進行簡單的資料檢視,但是如果一些資訊以clob的形式來展示,多條資料檢視很不方便,通過系統的dbms_lob.substr(欄位,長度,起始位置)方法將clob轉換為varchar2型別 sql語句中將clob轉化為varcha

angular2使用html2canvas資料匯出圖片

轉自:https://segmentfault.com/a/1190000012477096 1、安裝html2canvas npm install --save html2canvas 2、在需要的元件中引入html2canvas // 匯入整個模組的內容 imp

php標點符號替換空格

php用正則匹配將符號替換為空格 <?php $character = "[email protected]#$%^&*中'文中'文中'文().,<>|[]'\":;}{-_+=?/abcdefgh中'文ijklmnopqrstuvw

mac下 使用sed 分號替換回車

mac下的命令跟Linux還是有一些不同的, sed -i "" "s/;//g" filename        注意: 通過 ctrl v +  回車鍵  按出   第一組引號 是 備份  可以寫備份檔名  或者 不

使用sed和awk文件的非雙引號的逗號分隔符替換豎線

txt 豎線 $0 文件 文件中 sed和awk gin int 引號 原始文件:$ vi 5.txt"2018-08-13","aa,bb,cc,dd",zwfer,18,"qw,qe,r,ds,fd",888&

刷題筆記2——字串的空格替換指定的字串

題目描述 請實現一個函式,將一個字串中的每個空格替換成“%20”。例如,當字串為We Are Happy.則經過替換之後的字串為We%20Are%20Happy。 1、方法1 通過一個string物件來將元素不斷加入其中,加完以後找出空格,刪除即可 內容介紹1 strin

DataFrame的空列表替換nan值

DataFrame中空列表顯示為[],將其替換為NaN值的方法 DataFrame.mask(cond, other=nan, inplace=False, axis=None, level=None, errors='raise', try_cast=False, raise_on_e

劍指offer--京東演算法面試(字串的隨機個數的空格數替換一個空格)

#include <iostream> #include <string.h> #include <stdlib.h> using namespace std; /

4位元組資料二進位制模式001替換011

請寫出實現下面功能的轉換程式,輸入一個32—bit整數(4位元組),將此整數二進位制中的模式001替換為011,將替換後結果作為返回值返回。 函式原形:long     replace_pattern(long   inputInt);*/long replace_patt

js判斷字串A是否包含字串B,並字串B替換指定字串C

直接看例項: 上圖中buildType為:從後臺查詢的資料,其中dic為自定義註解,其中包含兩個值,code和name,在頁面上我們需要顯示name。 dic.name在未經過處理之前的值為:新址新建獨享站,新址新建共享站,共址共享等等,但是現在需要我們在顯示的時候不能顯

一個字串的空格替換“ ”(java)

設計一種方法,將一個字串中的所有空格替換成 %20 。你可以假設該字串有足夠的空間來加入新的字元,且你得到的是“真實的”字元長度。你的程式還需要返回被替換後的字串的長度。//將一個字串中的空格替換為"%20" import java.util.*; public class

poi操作word文件,以07版本參考,word文件圖片替換文字(替換文字也一樣),讀圖片可選文字內容

1、先簡單介紹下word07版本以後的儲存格式,word 07版本以後主要是以xml格式儲存。如果想檢視詳情可將字尾名改為zip,再檢視壓縮檔案可檢視到各種檔案,其中document.xml就是word主要展現給我們大家所看到的內容。2.根據第一步的描述,我查看了docume