我可以调用接口内的方法而不在我的类中实现接口吗?
package;
import Contact;
public interface IPerson{
public void savePerson(Contact contact);
}
Run Code Online (Sandbox Code Playgroud)
现在这里的一些课......
public class HulkHogan {
//Calling the method savePerson here
//I dont want to implement the Interface in all.
}
Run Code Online (Sandbox Code Playgroud)
静态地,您可以声明它被调用.你不一定要实现接口里面调用的类.例如:
public class HulkHogan {
private IPerson person;
public HulkHogan(IPerson person){
this.person = person;
}
public void doSomething(Contant contact){
//call your method here
person.savePerson(contact);
}
}
Run Code Online (Sandbox Code Playgroud)
但为了执行它,你将需要在一些地方实现它,因为接口只是描述事情的行为,但不提供实际的行为(即没有实现它).
你可以这样:
Person p = new IPerson{
public void savePerson(Contact contact) {
// some code
}
}
Run Code Online (Sandbox Code Playgroud)
现在打电话savePerson给p.您正在实现IPerson而不创建单独的类.