OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [xml-dev] Java: interface methods with same name and signatur e



Title: RE: [xml-dev] Java: interface methods with same name and signature

Ron,

You haven't been programming C++ recently, have you?

A Java interface merely specifies a set of method signatures that any implementing class must have actual implementations of.  If it implements more than one interface, then it must provide actual implementations for the _union_ of those sets - i.e., if class fooimp implements interface foo1, that just means that it must have _a_ method with signature "public void foo()".  Likewise, if class fooimp implements interface foo2, that just means that it must have _a_ method with a signature "public void foo()".  And if it implements both, then it still only needs to have _a_ method with that signature - not 2.

So the syntax is simply:

public class fooimp implements foo1, foo2 {
  public void foo(){
  ...
  }
}

Matthew

> -----Original Message-----
> From: Ronald Bourret [mailto:rpbourret@rpbourret.com]
> Sent: Friday, October 26, 2001 2:34 PM
> To: xml-dev
> Subject: [xml-dev] 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
>
> -----------------------------------------------------------------
> The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
> initiative of OASIS <http://www.oasis-open.org>
>
> The list archives are at http://lists.xml.org/archives/xml-dev/
>
> To subscribe or unsubscribe from this elist use the subscription
> manager: <http://lists.xml.org/ob/adm.pl>
>