日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java完全解耦_java-完全解耦

發布時間:2023/12/10 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java完全解耦_java-完全解耦 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

完全解耦:降低代碼的限制性,是同一代碼能夠用到更多的程序中

1 packageinterfaces.interfaceprocessor;2 import staticnet.mindview.util.Print.print;3

4 interfaceProcessor {5 String name();6 Object process(Object input);7 }8 public classApply{9 public static voidprocess(Processor p, Object s) {10 print("Using Processor "+p.name());11 print(p.process(s));12 }13 }

上述方法代碼Apply.process()打印出進程的名字和進程的過程。只要符合此要求的都可以利用這個代碼

1 packageinterfaces.interfaceprocessor;2 import static net.mindview.util.Print.*;3

4 public abstract class StringProcessor implementsProcessor {5 publicString name() {6 returngetClass().getSimpleName();7 }8 public abstractString process(Object input);9 public static String s = "if she weights the same as duck";10 public static voidmain(String[] args) {11 Apply.process(newUpcase(), s);12 }13 }14 class Upcase extendsStringProcessor{15 publicString process(Object input) {16 return((String)input).toUpperCase();17 }18 }

在利用Apply.process()方法時,需要一個適配器方法,本例中StringProcessor為字符串適配器,是接口Processor的實現

由于Apply.process()方法接收的參數為Proessor類型,因此必須要一個Processor接口的實現,我們把它稱作適配器,該適配器也是接口Processor的實現,這樣該適配器的類型也是Processor

這樣就可以把該適配器的內容傳到Apply.process()方法中(Apply.process(new Upacase(), s)

packageinterfaces.interfaceprocessor;classChacaterPairSwapper{publicString swap(String s) {

StringBuilder sb= newStringBuilder(s);for(int i=0; i

sb.setCharAt(i, c2);

sb.setCharAt(i+1,c1);

}returnsb.toString();

}

}class SwapAdapator implementsProcessor{

ChacaterPairSwapper cps= newChacaterPairSwapper();publicString name() {return ChacaterPairSwapper.class.getSimpleName();

}publicObject process(Object input) {returncps.swap((String)input);

}

}public classE11_Swap {public static voidmain(String[] args) {

Apply.process(new SwapAdapator(), "1234");

}

}

本例也是利用了Apply.process()方法,首先寫一個交換一對字符的方法,再寫了一個此方法的適配器,使其適配Apply.process()方法

這就是完全解耦,通過適配器,使得更多的代碼能夠用到同一方法

總結

以上是生活随笔為你收集整理的java完全解耦_java-完全解耦的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。