Why not multiple inheritance in C# and java

G

Guest

hi jon ,
i want to clerify you something MI is object oriented concept
and not feature of *some* OO languages
The same argument can be (and has been) made about garbage collection -
why should we be "babied" in terms of memory allocation? We're smart
developers, let us handle it.

and you can not compare it with Garbage collection
it is Memory managemant issue which should not be responcibility of smart
developer.
why C# implements inheritance also let it handeled by dev.and garbage
collection is handled by .net framwork not C#.
C# is oo Language,isn't it ?
so it should implement as much oo concept as it can at the cost of complexity.
I can understand there must be some complecities that might have prevented
language designers to implement this feature.
but i would be happy to see C# with all this complexities resolved at
language Design level which might be little more to acpect but ithink this
can be distinguishing feature of C#.

--
Have A Good Day,
Mahesh,
(e-mail address removed)
 
J

Jon Skeet [C# MVP]

MAHESH MANDHARE said:
i want to clerify you something MI is object oriented concept
and not feature of *some* OO languages

It all depends on your definition though. I'm sure there are people who
*define* OO to include MI, but there are also plenty who don't. I would
agree that it's an OO concept, but I disagree with the idea that it's
one which is a *necessary* part of every OO platform.
and you can not compare it with Garbage collection
it is Memory managemant issue which should not be responcibility of smart
developer.
why C# implements inheritance also let it handeled by dev.and garbage
collection is handled by .net framwork not C#.

MI would have to be handled by the framework as well.
C# is oo Language,isn't it ?

I believe so, yes. You presumably don't, if you believe a language
*has* to support MI in order to be OO.
so it should implement as much oo concept as it can at the cost of complexity.
I can understand there must be some complecities that might have prevented
language designers to implement this feature.
but i would be happy to see C# with all this complexities resolved at
language Design level which might be little more to acpect but ithink this
can be distinguishing feature of C#.

It would have to be at the CLI level to avoid some horrible mismatches
when interoperating with other languages.
 
G

Guest

hi jon,

--
Have A Good Day,
Mahesh,
(e-mail address removed)


Jon Skeet said:
It all depends on your definition though. I'm sure there are people who
*define* OO to include MI, but there are also plenty who don't. I would
agree that it's an OO concept, but I disagree with the idea that it's
one which is a *necessary* part of every OO platform.

It is not my defination or thought ,IT is one of the object oriented concept
and can not change depending on plenty who don't aggree.
see i am new to software and didm.t worked on languages which implements MI
that's why i can't argue with you on this point.
MI would have to be handled by the framework as well.


I believe so, yes. You presumably don't, if you believe a language
*has* to support MI in order to be OO.
Language can be object oriented without support of features like
polymorphisum and other OO concept also.
It would have to be at the CLI level to avoid some horrible mismatches
when interoperating with other languages.

can you suggest me what kind of horrible mistake it can cause with some
example.
I know some problems that MI can cause like one Described by bruce in the
same blog but there are solutions to that
If you know some other Please let me know
 
J

Jon Skeet [C# MVP]

MAHESH MANDHARE said:
It is not my defination or thought ,IT is one of the object oriented concept
and can not change depending on plenty who don't aggree.
see i am new to software and didm.t worked on languages which implements MI
that's why i can't argue with you on this point.

It is a concept which *can* be part of an OO platform, but exactly
where do you get the idea from that the definition you use is the "one
true" definition of OO?
Language can be object oriented without support of features like
polymorphisum and other OO concept also.

No, there I'd disagree. Polymorphism *is* an absolute core fundamental
part of OO in my view.
can you suggest me what kind of horrible mistake it can cause with some
example.

Horrible mismatches, not horrible mistakes.
I know some problems that MI can cause like one Described by bruce in
the same blog but there are solutions to that If you know some other
Please let me know

Well, there are problems that any MI implementation has to overcome,
such as the diamond of death. However, I was talking about the idea of
one language targetting the CLI supporting MI when the CLI itself
doesn't. How do you model it? I believe there's an implementation of
Smalltalk for .NET which does it using extra types which are
autogenerated all over the place - fine while you're using Smalltalk,
but a right pain as soon as someone tries to use your library from
another language such as C# or VB.NET.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top