java介面的妙用 (轉)
介面的妙用
彭建雄
關鍵字:namespace prefix = o ns = "urn:schemas--com::office" />
,interface
說明
一氣之作,文字功夫太差請大家諒解,希望能對研究COM的朋友帶點幫助
介面功能介紹
1、‘純’抽象類的實現(參見JAVA思想P/153)
// Interface1.java 介面只負責描述自己的樣子“對於實現我的所有的類,看起來都應該象我這個樣子。我所有的方法,實現類都必須有!”
public interface Interface1 {
public void setS(String str);
public String getS();
public void ShowMessage(String MSG);
}
=====================================================================
// ClassItf.java “介面只是一個非常‘純‘的抽象的東西,你的實現程式碼都在我這裡!”
public class ClassItf implements Interface1{
public String S = "";
public ClassItf() {
}
public void ShowMessage(String MSG)
{
System.out.print(this.getClass().getName()+"====="+MSG+"====by Interface1n/"); }
public void setS(String str)
{
S = str;
}
public String getS()
{
return S;
}
}
2、多重繼承的實現(參見JAVA程式設計思想P/155)
//Interfase2.java 介面的樣子
public interface Interface2 {
public void ShowMessage2(String MSG);
}
// ClassItf.java 加入多重繼承後的ClassItf 灰底為加入更改、插入行
public class ClassItf implements Interface1,Interface2{
public String S = "";
public ClassItf() {
}
public void ShowMessage(String MSG)
{
System.out.print(this.getClass().getName()+"====="+MSG+"====by Interface1n/");
}
public void setS(String str)
{
S = str;
}
public String getS()
{
return S;
}
public void ShowMessage2(String MSG)
{
System.out.print(this.getClass().getName()+"====="+MSG+"====by Interface2n/");
}
}
呵呵!我的多重繼承功能在JAVA中有著大量的應用如:
public class JFrame extends Frame implements WindowConstants, Accessible, PaneContainer
3、外觀與實現分離
// ClassItf.java “介面只是一個非常‘純‘的抽象的東西,你的實現程式碼都在我這裡!”
public class ClassItf implements Interface1,Interface2{
public ClassItf() { } public void ShowMessage(String MSG)// 實現了介面‘Interface1’ShowMessage { System.out.print(this.getClass().getName()+"====="+MSG+"====by Interface1n/"); public void setS(String str) //實現了介面‘Interface1’setS S = str; } public String getS()//實現了介面‘Interface1’getS return S; } public void ShowMessage2(String MSG)// 實現了介面‘Interface2’ ShowMessage2 { System.out.print(this.getClass().getName()+"====="+MSG+"====by Interface2n/"); } } 4、提供的影子 public void ShowMessage(Interface1 req) { req.ShowMessage("111"); } public void ShowMessage2(Interface2 req) { req.ShowMessage2("111"); } void jButton1_actionPerformed(ActionEvent e) { private ClassItf C1 = new ClassItf(); ShowMessage(C1); ShowMessage2(C1); } 同樣呀,我的應用也非常的廣呀! 比如在的 public void doPost(HttpServletRequest request,HttpServletResponse response) public void doGet(HttpServletRequest request,HttpServletResponse response) HttpServletRequest ,HttpServletResponse我的應用! 其它如: 事件Listen呀: public void addActionListener(ActionListener l) Observer呀! 5、透過介面實現引用傳遞 public void SetS1(Interface1 req) { req.setS("New Value with C1"); } public void SetS2(ClassNoitf req) { req.setS("New Value with C2"); } void jButton3_actionPerformed(ActionEvent e) { ClassItf C1 = new ClassItf(); ClassNoitf C2 = new ClassNoitf(); //Set C1 SetS1(C1); //Set C2; SetS2(C2); //Get Value System.out.print(C1.getS()); System.out.print(C2.getS()); }
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-998634/,如需轉載,請註明出處,否則將追究法律責任。
最新文章
相關文章
- Java集合框架的概念以及常用介面的介紹Java框架
- java8介面的靜態方法和預設方法Java
- 介面的使用(Java)Java
- 頁面的跳轉技巧-setViewControllersViewController
- setTimeout妙用
- git 妙用Git
- phpStudy啟動介面的功能簡介PHP
- Java中抽象類和介面的介紹及二者間的區別Java抽象
- 從 301 跳轉,聊聊邊緣規則的那些小妙用
- ActionChains 的妙用AI
- reduce的妙用
- 字串排序 (java comparator介面的使用)字串排序Java
- 呼叫java介面的方式有哪些?Java
- dble簡介及相對於MyCAT的優勢方面的介紹
- 城市選擇頁面的 路由配置 跳轉路由
- 教你批次翻轉大量影片畫面的方法
- [20191216]route妙用.txt
- Flink狀態妙用
- hr標籤妙用
- Go channel 的妙用Go
- Ibert眼圖測試與高速介面的介質
- 一份儘可能全面的Go channel介紹Go
- SpringMVC---02---實現頁面的跳轉 轉向與重定向SpringMVC
- JAVA簡介Java
- Java介紹Java
- 責任鏈模式妙用模式
- Linux:“awk”命令的妙用Linux
- Vue 小API大妙用VueAPI
- IntegerCache的妙用和陷阱
- 二分的妙用
- 妙用ConstraintLayout的Circular positioningAI
- MacBook上的touchid妙用Mac
- html <a>標籤的妙用HTML
- SATA介面和M.2介面的固態硬碟哪個好?SSD硬碟SATA介面和M.2介面的區別硬碟
- Java中抽象類和介面的區別Java抽象
- Java GeoTools構建地理點線面的方法Java
- Java中抽象類與介面的區別Java抽象
- [轉]SSH框架簡介框架
- USB3.0介面的工業相機應用