[Home] [By Thread] [By Date] [Recent Entries]

  • From: Michael Brennan <Michael_Brennan@A...>
  • To: 'Ronald Bourret' <rpbourret@r...>, xml-dev <xml-dev@l...>
  • Date: Fri, 26 Oct 2001 14:56:23 -0700

You just provide one implementation. There is no way to have 2 different
implementations for a method with the same name and signature, even if you
implement 2 different interfaces that declare that method.

In the few cases where this has been an obstacle for me, I just created
adapters and factory methods on the object to provide an appropriate adapter
rather than implementing the interfaces directly. 

> -----Original Message-----
> From: Ronald Bourret [mailto:rpbourret@r...]
> Sent: Friday, October 26, 2001 2:34 PM
> To: xml-dev
> Subject:  Java: interface methods with same name and 
> signature
> 
> 
> Sorry about the non-XML topic...
> 
> Suppose I have two interfaces, both of which have a method 
> with the same
> name and the same signature. For example:
> 
>    public interface foo1 {public void foo()}
>    public interface foo2 {public void foo()}
> 
> Now suppose I want a single object to implement both interfaces:
> 
>    public class fooimp implements foo1, foo2
> 
> Calling methods shouldn't be a problem, as I can cast:
> 
>    fooimp fi = new fooimp();
>    (foo1)fi.foo();
>    (foo2)fi.foo();
> 
> But what is the syntax for actually implementing the methods? This is
> clearly a problem:
> 
>    public class fooimp implements foo1, foo2
>    {
>       public void foo() {...} // from foo1
>       public void foo() {...} // from foo2
>    }
> 
> I couldn't find anything in the Java spec...
> 
> Thanks,
> 
> -- Ron

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member