2013-02-23 107 views
1

我有一個問題,只是出於好奇,這是如何指定的參考參數的方法,並確保該參數必須實現一個接口如何指定參考方法參數實現接口

如ActionListener的方法處理事件 時,當你添加一個ActionListener使用addActionListener方法(ARG)方法 ARG必須是一個實現ActionListener接口 對象的引用的GUI組件的actionPerformed,這就是我的問題 addActionListener方法,方法,如何確保其ARG實現ActionListener接口

JTextField textField = new JTextField();//creating new text field 

TextFieldHandler textFiledHandler = new TextFieldHandler();//object of the handler 

textField.addActionListener(textFieldHandler);//here's my question 
add(textField); 

//creating a nested class 
private class TextFieldHandler implements ActionListener { 
    @Override 
    public void actionPerformed (ActionEvent event) { 
      //do something here 
    }//end actionPerformed 
}//end class TextFieldHandler 

回答

1

所有你需要做的是將參數的類型設置爲接口名稱,然後該方法將接受對象,只要它們是實現該接口的類型即可。

實施例:

public void methodName(InterfaceName x) {} 

將接受作爲參數實現 「InterfaceName中」 的任何對象。

在這種特殊情況下,public void addActionListener(ActionListener l)可確保參數實現接口ActionListener(這是Java如何實現的)。