获取java中接口未定义的方法

时间:2014-04-09 16:56:28

标签: java interface

我有一个界面" Messenger",它定义了4种方法。然后在" MessengerEng"上课,我继承了#34; Messenger"接口并添加一个未定义的方法" msgExample"。 问题:如何访问" msgExample"方法(未在" Messenger"界面中定义)?

3 个答案:

答案 0 :(得分:0)

您必须有一个指向MessengerEng的指针才能访问msgExample方法,因为这是可以包含该函数的最高对象引用。

答案 1 :(得分:0)

您可以将其强制转换为所需类型。例如:

Messenger msg = new MessengerEng();
((MessengerEng) msg).methodNotInterface();

这是一个不安全的演员表,所以如果有的话,请小心使用。

答案 2 :(得分:0)

我有一个例子。阅读&告诉我你是不是想做什么。

interface Messenger{
public void Method1outof4();
}
class MessengerEng implements Messenger{
    public void Method1outof4(){
    System.out.println("Interface method");
}
public void msgExample(){
    System.out.println("Non-Interface method");
}
}
class testInterface{
public static void main(String[] args){
    MessengerEng m = new MessengerEng();
    m.Method1outof4();
    m.msgExample();
}
}