Re: Question about interface
- From: "Bob Grommes" <bob@xxxxxxxxxxxxxx>
- Date: Thu, 26 May 2005 15:22:17 -0700
Actually I would just implement an abstract method, Travel(), and let *its*
implementations in child classes decide whether to fly or swim.
Multiple inheritance is one of those sexy ideas that degenerates into a
quagmire of spaghetti very quickly. Interfaces let you implement a species
of mixins which is IMO about all MI is good for anyway.
If you really want MI, however, the Eiffel.NET language *does* provide it.
It even provides generics without waiting for CLR 2.0.
--Bob
"Quentin Huo" <q.huo@xxxxxxxxxxxxxx> wrote in message
news:%23WtNctjYFHA.2124@xxxxxxxxxxxxxxxxxxxxxxx
> Hi:
>
> C# doesn't support multiple inheritance but it supports interface.But I
> think these ways are different.
>
> For example, C++ supports multiple inheritance. I have two classess classA
> and classB:
>
> class classA(){
> ......
> public void fly(){
> ......
> }
> ......
> }
>
> class classB(){
> ......
> public void swim(){
> ......
> }
> ......
> }
>
> Now we can create another class "classC" which inherits from "classA" and
> "classB".
> So classC will have the features of fly and swim. The important is we
> don't need do anything else.
>
> But in C#, it doesn't support multiple inheritance. Now, if I need to
> create a class "classC" and it will have the "fly" and "swim" functions in
> the existing classes "classA" and "classB", how can I do ?
>
> I think one solution is
> - create an interafce "interfaceSwim" and "swim" method;
> - classB inherits from classA and interfaceSwim, and implements the swim
> method;
> - create classC which inherits from classB.
>
> But there will be one more level of inheritance architecture. Is it
> correct? or better solution?
>
> Thanks
>
> Q.
.
- References:
- Question about interface
- From: Quentin Huo
- Question about interface
- Prev by Date: Re: C# messaging
- Next by Date: XmlNode.OuterXml inserting xmlns attribute
- Previous by thread: Question about interface
- Next by thread: Re: Question about interface
- Index(es):
Relevant Pages
|